XL 2019 AutoFiltre et zone de données

  • Initiateur de la discussion Initiateur de la discussion Flx1er
  • 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 !

Flx1er

XLDnaute Occasionnel
Bonjour,
Je désire connaitre la méthode me permettant d'ajuster la zone de données de l'autofiltre :
ActiveSheet.Range("$A$1:$C$10").AutoFilter Field:=3, Criteria1:="chap"

Dans l'exemple joint la zone de données commence en $A$1 pour se terminer en $C$10. Cette zone est donc figée.

Comment faire pour que cette zone de données soit réactualisée dynamiquement en fonction du nombre de lignes qui la constituent.

En vous remerciant pour votre aide
 

Pièces jointes

Solution
Bonsoir à tous,

Avec ce code :
VB:
Sub Macro4()
Dim der&
   Application.ScreenUpdating = False
   With Sheets("Nomenclature")
      .Columns("a:c").Interior.Color = xlColorIndexNone
      der = Application.Match(Chr(255), .Columns("b:b"))
      If der = 1 Then Exit Sub
      On Error Resume Next
      With .Range("a1:c" & der)
         .AutoFilter Field:=3, Criteria1:="chap"
         .SpecialCells(xlCellTypeVisible).Interior.Color = RGB(255, 190, 90)    ' orange
         .AutoFilter Field:=3, Criteria1:="ss-chap"
         .SpecialCells(xlCellTypeVisible).Interior.Color = RGB(255, 255, 100)    ' jaune
         .AutoFilter Field:=3, Criteria1:="déf"
         .SpecialCells(xlCellTypeVisible).Interior.Color = RGB(200, 255, 200)    ' vert...
Hello

en transformant simplement le tableau en Tableau Structuré

1) selection d'une cellule DANS la plage de donnée
2) Ctrl + L
3) valider (en cochant "contient une ligne d'entete")
et voila

maintenant, tout ajout de données juste en dessous de la table est automatiquement intégrée dans la table

un peu de lecture ici

 
Bonsoir à tous,

Avec ce code :
VB:
Sub Macro4()
Dim der&
   Application.ScreenUpdating = False
   With Sheets("Nomenclature")
      .Columns("a:c").Interior.Color = xlColorIndexNone
      der = Application.Match(Chr(255), .Columns("b:b"))
      If der = 1 Then Exit Sub
      On Error Resume Next
      With .Range("a1:c" & der)
         .AutoFilter Field:=3, Criteria1:="chap"
         .SpecialCells(xlCellTypeVisible).Interior.Color = RGB(255, 190, 90)    ' orange
         .AutoFilter Field:=3, Criteria1:="ss-chap"
         .SpecialCells(xlCellTypeVisible).Interior.Color = RGB(255, 255, 100)    ' jaune
         .AutoFilter Field:=3, Criteria1:="déf"
         .SpecialCells(xlCellTypeVisible).Interior.Color = RGB(200, 255, 200)    ' vert
         .Rows(1).Interior.Color = RGB(200, 200, 200)    ' gris
         .AutoFilter
         On Error GoTo 0
      End With
   End With
   ActiveWorkbook.Save
End Sub
 

Pièces jointes

Hello

en transformant simplement le tableau en Tableau Structuré

1) selection d'une cellule DANS la plage de donnée
2) Ctrl + L
3) valider (en cochant "contient une ligne d'entete")
et voila

maintenant, tout ajout de données juste en dessous de la table est automatiquement intégrée dans la table

un peu de lecture ici

Je vous remercie de votre aide, mais cette solution n'est pas adaptée au projet que je dois réaliser.
 
- 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
1
Affichages
376
Retour