XL 2019 Masquer des lignes sous condition en vba

  • Initiateur de la discussion Initiateur de la discussion Hellboy60
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Hellboy60

XLDnaute Nouveau
Bonjour à toutes les personnes présentes.

je souhaiterais masquer toutes les lignes contenant un "x" dans la colonne de "A7:A72"
sachant que les "x" de la colonne "A7:A72" peuvent changer de place par une recherchex
donc, dès qu'il y a du changement de la colonne de "A7:A72",
Je souhaiterais que les lignes se mettent à jour en vba.

j'espère avoir été clair dans mes explications de mon problème,
et sans vouloir abuser, une petite note pour chaque ligne de commande en français
serait un plus pour ma compréhension.

et bon dimanche.

cordialement
 

Pièces jointes

Bonjour Hellboy60, le forum,

Attention, vous écrivez :
sachant que les "x" de la colonne A peuvent changer de place par une recherchex
De deux choses l'une.

Ou bien vous modifiez les "x" manuellement et on utilisera une macro Worksheet_Change.

Ou bien vous modifiez les "x" par formules et on utilisera une macro Worksheet_Calculate.

On a vu ça sur votre précédente discussion.

A+
 
Bonjour Hellboy60, le forum,

Attention, vous écrivez :

De deux choses l'une.

Ou bien vous modifiez les "x" manuellement et on utilisera une macro Worksheet_Change.

Ou bien vous modifiez les "x" par formules et on utilisera une macro Worksheet_Calculate.

On a vu ça sur votre précédente discussion.

A+
a savoir , les 'x" change grâce à une liste déroulante , selon ce qu'il affiche, les "x" ce retrouve a des emplacements diffèrent
moi je pencherai pour un Worksheet_Change , mais je ne suis pas et de loin un spécialiste en la matière.
 
C'est donc une modification manuelle :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Range("A6", Cells.SpecialCells(xlCellTypeLastCell)).AutoFilter 1, "<>x" 'filtre automatique sur la 1ère colonne
End Sub
La macro s'exécute quand on modifie ou valide une cellule quelconque.
 

Pièces jointes

C'est donc une modification manuelle :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Range("A6", Cells.SpecialCells(xlCellTypeLastCell)).AutoFilter 1, "<>x" 'filtre automatique sur la 1ère colonne
End Sub
La macro s'exécute quand on modifie ou valide une cellule quelconque.
c'est exactement ça, pile poil ce dont j'avais besoin.
merci job75, toujours aussi réactif.
je te souhaite un bon dimanche.
 
Enlever le filtre non mais pour éviter tous ces boutons de filtrage on peut limiter la zone filtrée à la colonne A :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Range("A6:A" & Cells.SpecialCells(xlCellTypeLastCell).Row).AutoFilter 1, "<>x"  'filtre automatique sur la colonne A
End Sub
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
449
Retour