Hauteur de lignes à 0 si ligne vide
Résolu
bbtronic
Messages postés
10
Date d'inscription
Statut
Membre
Dernière intervention
-
PlacageGranby Messages postés 402 Statut Membre -
PlacageGranby Messages postés 402 Statut Membre -
Bonjour à tous,
Je cherche une macro pour mettre les lignes d'une feuille Excel à 0 si il n'y a aucune donnée sur les lignes.
J'affecterai cette macro à un bouton.
Merci d'avance pour votre aide.
Je cherche une macro pour mettre les lignes d'une feuille Excel à 0 si il n'y a aucune donnée sur les lignes.
J'affecterai cette macro à un bouton.
Merci d'avance pour votre aide.
1 réponse
-
Bonjour,
Par "mettre les lignes à 0", vous entendez supprimer la ligne? Masquer la ligne? Remplir une cellule de la ligne avec le chiffre 0?
Cordialement.-
Comme votre sujet est "hauteur de ligne à 0", j'en déduis que vous souhaitez masquer cette ligne. Dans ce cas, utiliser le code suivant :
Sub LIGNE() Dim DL As Long DL = Cells(Application.Rows.Count, 1).End(xlUp).Row 'A supposer que la colonne de référence (la plus remplie jusqu'en bas) soit la colonne A For i = DL To 1 Step -1 'Si la vérif commence en ligne 1 If Application.CountA(Rows(i)) = Empty Then Rows(i).EntireRow.Hide 'Remplacer Hide par Delete si vous souhaitez supprimer la ligne Next i End Sub
Cordialement. -
Essayez ce code plutôt, je me suis planté sur l'autre, fatigue probablement...
Sub LIGNE() Dim DL As Long DL = Cells(Application.Rows.Count, 1).End(xlUp).Row 'A supposer que la colonne de référence (la plus remplie jusqu'en bas) soit la colonne A For i = DL To 1 Step -1 'Si la vérif commence en ligne 1 If Application.CountA(Rows(i)) = Empty Then Rows(i).Hidden = True Next i End Sub
Cordialement. -
Bonjour Kuartz,
Je n'ai pas réussi avec cette macro.
En fait le tableau dans ma feuille Excel comporte des colonnes de A à Q susceptibles de recevoir une info que je saisie.
En effet, je souhaite, par la macro, mettre LA HAUTEUR DE LIGNE à 0 des lignes qui n'ont aucune information de saisie de A à Q
Merci encore. -
Bonjour bbtronic, Kuartz
Dans le code de kuartz, il y a une boucle,
On boucle du début de la feuille jusqu'a a dernière ligne ayant des données....
Pour trouver justement quelle est cette dernière ligne, il a pris la colonne A en référence.
Si par exemple, il n'y aurait absoluement rien dans la colonne A, alors excel parcours cette colonne, et ne trouve rien, et la variable DL egale 1 et excel va seulement vérifier si la première ligne doit être masqué ou non.
Si il n'y a pas moyen de savoir quelle colonne va contenir plus d'information, alors il faudrait travailler sur une zone fixe.
Combien de ligne va avoir ton ficher ? 100 1000 10000
Et on adapte. on remplace DL par 10 000
For i = 10000 To 1 Step -1 'Si la vérif commence en ligne 1 If Application.CountA(Rows(i)) = Empty Then Rows(i).Hidden = True Next i
L'utilité de la variable DL, est de ne pas boucler pour rien et sauver du temps, on trouve exactement jusqu'a quelle ligne on doit vérifié, mais pour le savoir, il faut connaitre quelle colonne est la référence.
Aussi, la variable i n'était pas défini, donc DIM i as long -
-