Suppression de lignes inutiles Excel VBA

Grobibi34 Messages postés 83 Date d'inscription   Statut Membre Dernière intervention   -  
aquarelle Messages postés 7181 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour, tout le monde.

Bon voila je suis en train d'éditer un petit outil qui permettra de faire automatiquement un planning, je ne rentre pas dans les détails...

La taille du tableau ainsi édité est donc variable.

Je pense que j'ai un petit pb de programation dans mon code mais à l'impression il y a systématiquement 200 lignes et bien sur les dernières sont vides et donc pour l'imprimer c'est pas top.

La seule solution, si je ne veu pas me relancer dans mon code, est de selectionner la dernière ligne de mon tableau jusqu'en bas de ma page est de les supprimer. J'arrive à faire cette opération quand ce sont des lignes fixes grâce à ces deux petites lignes:

Rows("50:65536").Select
Selection.Clear

Donc ici de la ligne 50 à la ligne 65536.

Je voudrai que le 50 soit la valeur de ma variable r.

Quel syntaxe dois-je mettre ?

Cordialement,

Grobibi34
A voir également:

3 réponses

aquarelle Messages postés 7181 Date d'inscription   Statut Modérateur Dernière intervention   1 304
 
Bonsoir,
Cette macro supprime les lignes vides de la feuille active.
Sub SupprimerLigneVide()
DerniereLigne = ActiveSheet.UsedRange.Rows.Count
Application.ScreenUpdating = False
For r = DerniereLigne To 1 Step -1
      If Application.CountA(Rows(r)) = 0 Then Rows(r).Delete
Next r
End Sub


Bonne nuit
1
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
bonjour,
Supposons que tu recherche la dernière ligne valide (remplie) et la dernière colonne serrait par Ex: G

DerniereLigne = Range("A1").SpecialCells(xlCellTypeLastCell).Row
ZoneAimprimer="A1:G" & DerniereLigne
ActiveSheet.PageSetup.PrintArea = ZoneAimprimer
A+
0
Grobibi34 Messages postés 83 Date d'inscription   Statut Membre Dernière intervention   30
 
Oui pas mal l'idée mais j'aimerai faire un fichier réelement simple pour l'utilisateur sans aucune formation, donc j'aimerai essayé de supprimé automatiquement "tout ce qui dépasse"
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Bon, si tu tient vraiment a travaillé a l'envers...

DerniereLigne = (Range("A1").SpecialCells(xlCellTypeLastCell).Row) + 1
ZoneASuprimer = DerniereLigne & ":65536"
Rows(ZoneASuprimer).Select
Selection.Clear
A+
0