Masquer/Afficher des lignes par activation de la feuille
SamsamC
-
PlacageGranby Messages postés 393 Date d'inscription Statut Membre Dernière intervention -
PlacageGranby Messages postés 393 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'aimerais afficher ou masquer des lignes dans Excel en activant la feuille selon une condition: si dans la colonne A (exemple A2 à A100) la cellule est vide : ne pas afficher la ligne. Afficher la ligne dans le cas contraire. La feuille n'a pas de validation de données et n'est que pour consultation et impression. Les valeurs contenues dans la colonnes A proviennent d'une autre feuille.
Je commence en VBA, alors...
J'ai trouvé ça dans un blogue. Je l'ai modifié mais il y a erreur dans le programme:
Private Sub Worksheet_Activate()
Dim plage As Range, c As Range
Set plage = Union([A2:A30], [A31:A101])
For Each c In plage
If c.Value = "" Then
c.EntireRow.Hidden = True
Else
c.EntireRow.Hidden = False
End If
Next c
plage = Nothing
End Sub
Ça plante. Pouvez-vous m'aider?
J'aimerais afficher ou masquer des lignes dans Excel en activant la feuille selon une condition: si dans la colonne A (exemple A2 à A100) la cellule est vide : ne pas afficher la ligne. Afficher la ligne dans le cas contraire. La feuille n'a pas de validation de données et n'est que pour consultation et impression. Les valeurs contenues dans la colonnes A proviennent d'une autre feuille.
Je commence en VBA, alors...
J'ai trouvé ça dans un blogue. Je l'ai modifié mais il y a erreur dans le programme:
Private Sub Worksheet_Activate()
Dim plage As Range, c As Range
Set plage = Union([A2:A30], [A31:A101])
For Each c In plage
If c.Value = "" Then
c.EntireRow.Hidden = True
Else
c.EntireRow.Hidden = False
End If
Next c
plage = Nothing
End Sub
Ça plante. Pouvez-vous m'aider?
A voir également:
- Masquer/Afficher des lignes par activation de la feuille
- Clé d'activation windows 10 - Guide
- Bruler feuille de laurier - Guide
- Feuille de pointage excel - Télécharger - Tableur
- Feuille de score belote excel - Forum Excel
- Partager des photos en ligne - Guide
1 réponse
Bonjour,
Nous venons de terminer un topic qui avait une question semblable
https://forums.commentcamarche.net/forum/affich-32536140-hauteur-de-lignes-a-0-si-ligne-vide
Masquer se résume a mettre la hauteur a zero.
Tu devrais pouvoir trouver l'information qui te faut.
Ensuite, si tu veux masquer à chaque activation de la feuille, il faut mettre le code dans l'évènement activate de la feuille.
Voici un très bon tutoriel sur la chose
https://silkyroad.developpez.com/VBA/EvenementsFeuille/
Nous venons de terminer un topic qui avait une question semblable
https://forums.commentcamarche.net/forum/affich-32536140-hauteur-de-lignes-a-0-si-ligne-vide
Masquer se résume a mettre la hauteur a zero.
Tu devrais pouvoir trouver l'information qui te faut.
Ensuite, si tu veux masquer à chaque activation de la feuille, il faut mettre le code dans l'évènement activate de la feuille.
Voici un très bon tutoriel sur la chose
https://silkyroad.developpez.com/VBA/EvenementsFeuille/
plage = Nothing
Et pourquoi faire une union ?
Set plage = Range("A2:A100")
serait plus élégant.