Activer macro excel au changement d'onglet
cigalinette
Messages postés
2
Statut
Membre
-
LeRogerTroutman -
LeRogerTroutman -
Bonjour,
la problématique est la suivante: des données sont copiées en ligne d'une feuille A à une feuille B sous certaines conditions.
Du coup, des lignes vides existent sur la feuille B. Je les cache avec un filtre vide/non vide. Le problème est qu'une fois le filtre en place, il ne cache pas les nouvelles lignes vides. Il faut le désactiver et le réactiver à la main.
1ere question: est qu'une option existe pour que le filtre soit permanent une fois pour toute et prenne en compte les nouvelles valeurs inscrites après son activation
2eme question: si non à la 1ere question, une petite macro qui désactive et réactive le filtre à chaque fois que l'on vient sur la feuille B serait bien utile. Comment faire ?
Merci d'avance pour vos réponses
@+
la problématique est la suivante: des données sont copiées en ligne d'une feuille A à une feuille B sous certaines conditions.
Du coup, des lignes vides existent sur la feuille B. Je les cache avec un filtre vide/non vide. Le problème est qu'une fois le filtre en place, il ne cache pas les nouvelles lignes vides. Il faut le désactiver et le réactiver à la main.
1ere question: est qu'une option existe pour que le filtre soit permanent une fois pour toute et prenne en compte les nouvelles valeurs inscrites après son activation
2eme question: si non à la 1ere question, une petite macro qui désactive et réactive le filtre à chaque fois que l'on vient sur la feuille B serait bien utile. Comment faire ?
Merci d'avance pour vos réponses
@+
Configuration: Excel 2002
5 réponses
-
Bonjour tout le monde,
thisworkbook ?
j'aurais plutôt dit Worksheet_Activate()
Clic-droit sur le nom d'onglet de ta feuille, 'visualiser le code', y coller le code suivant :Private Sub Worksheet_Activate() Selection.AutoFilter Field:=3, Criteria1:="<>" End Sub
Si tu quittes et reviens sur ta feuille le 3ème filtre automatique sera rafraichi.
Tu peux aussi le mettre sur le double-clic pour ne pas à avoir à sélectionner une autre feuille :Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Selection.AutoFilter Field:=3, Criteria1:="<>" Cancel = True End Sub
eric -
-
hé bé, t'es une vraie cigale... Tu as chanté tout le mois au lieu de travailler ? ;-)
Merci pour le retour -
J'ai utilisé le :
Private Sub Worksheet_Activate()
...
End Sub
Ca marche nickel, merci eric.
Le Roger -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
bonjour
Il faut placer ta macro dans thisworkbook en fonction Activate.
Tu peux enregistrer ta macro dans un module puis la déplacer ensuite.