Masquer lignes automatiquement
Bonjour à tous,
Voilà, j'ai un fichier avec une feuille de calcul "A" dans laquelle j'ai un tableau.
Ce tableau est rempli selon deux informations que je demande via liste déroulantes.
Sachant qu'il va chercher les informations dans d'autres feuilles de calcul, cela ligne par ligne, il y a toujours des lignes qui sont vides.
Mon but, est de masquer automatiquement les lignes vides, sans passer par un bouton (ni par le filtre).
J'ai tenté :
Sub hide()
Range("B6:B605")
For Each o In Selection
If o.Value = "" Then
o.EntireRow.Hidden = True
End If
Next
End Sub
Je suis parti du principe que si une cellule de la ligne est vide, alors je masque la cellule.
Le problème est que ma macro ne s’exécute pas automatiquement, et surtout c'est très long car elle masque ligne par ligne.
Est ce que quelqu'un aurait une idée ?
Merci beraucoup !
Salut,
Je pense que l’on pourrait déjà modifier ton code à ce niveau-là afin qu’il n’y ait jamais de ligne vides. Sans voir ton fichier – ou du moins un fichier absolument représentatif – c’est difficile de t’en dire plus à ce sujet.guicart a écrit :Sachant qu'il va chercher les informations dans d'autres feuilles de calcul, cela ligne par ligne, il y a toujours des lignes qui sont vides.
Il faut pourtant bien déclencher ce code d’une manière ou d’une autre ; si tu ne veux pas de bouton, il faut soit trouver un évènement qui permettrait de le faire (la sélection de la feuille, le changement des valeurs des cellules ou n’importe quel autre évènement) ou appeler ton code depuis un autre code. Sans voir ton fichier – ou du moins un fichier absolument représentatif – c’est difficile de t’en dire plus à ce sujet.guicart a écrit :Mon but, est de masquer automatiquement les lignes vides, sans passer par un bouton (ni par le filtre).
Tu peux déjà essayer de placer l’instruction suivant en début de macro :guicart a écrit :Le problème est ……………. c'est très long car elle masque ligne par ligne.
Application.ScreenUpdating = False
Amicalement.