XL 2019 Ma fonction copier/coller en VBA ignore le filtre :/

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 !

casualexcel

XLDnaute Nouveau
Bonjour à toutes et à tous !

J'utilise un classeur composé de deux feuilles.
Sur une des feuilles j'importe des données grâce à un export internet.
Sur ma deuxième feuille j'utilise une macro qui va:
- appliquer un tri dans l'export
- copier des données et les coller dans l'autre feuille

J'utilise ce classeur depuis un moment et il a toujours fonctionné, cependant depuis que j'ai eu à décaler quelques colonnes cela ne fonctionne plus, le filtre est bien appliqué sur l'export mais le copier/coller copie toutes les données de l'export, même celles "cachées" par le filtre.

Merci pour votre temps !
 
Dernière édition:
Solution
Essaie ce code

VB:
Sub Macro1()

With Sheets("sheet2")
    fin = .Range("A" & .Rows.Count).End(xlUp).Row 'dernière ligne non vide de la colonne A
    .Range("A6:AZ" & fin).AutoFilter Field:=29, Criteria1:="YELLOW", Operator:=xlOr, Criteria2:="RED"
    .Range("A6:AZ" & fin).AutoFilter Field:=24, Criteria1:="YES"
    .Range("A6:AZ" & fin).AutoFilter Field:=28, Criteria1:="<75"

    .Range("F7:F" & fin).SpecialCells(xlCellTypeVisible).Copy Destination:=Sheets(1).Range("A11")
    .Range("AB7:AB" & fin).SpecialCells(xlCellTypeVisible).Copy Destination:=Sheets(1).Range("F11")
    .Range("AC7:AC" & fin).SpecialCells(xlCellTypeVisible).Copy Destination:=Sheets(1).Range("G11")
End With

End Sub
@vgendron
Ci joint le fichier exemple
En sheet 1 le tableau ou je viens coller mes données, le bouton run lance la macro (filtre la Sheet 2 + copie/colle des données de la Sheet 2 vers la Sheet 1)
le bouton clear sert à effacer les données

Je me retrouve avec des milliers de ligne au lieu d'une seule (seule ligne visible sur la sheet 2 après avoir lancé la macro)
Même si le vba employé ici est relativement primaire il fonctionnait parfaitement et ne prenait que les lignes filtrées

Merci à vous !
 

Pièces jointes

Au fait, si le fichier exemple est trop complexe à utiliser je peux peut-être faire mieux, mais il n'y a que sur ce tableau que je rencontre un problème de filtre/vba, j'utilise les mêmes fonctions de filtre et de c/c pour d'autres tableaux et cela fonctionne à chaque fois
 
Essaie ce code

VB:
Sub Macro1()

With Sheets("sheet2")
    fin = .Range("A" & .Rows.Count).End(xlUp).Row 'dernière ligne non vide de la colonne A
    .Range("A6:AZ" & fin).AutoFilter Field:=29, Criteria1:="YELLOW", Operator:=xlOr, Criteria2:="RED"
    .Range("A6:AZ" & fin).AutoFilter Field:=24, Criteria1:="YES"
    .Range("A6:AZ" & fin).AutoFilter Field:=28, Criteria1:="<75"

    .Range("F7:F" & fin).SpecialCells(xlCellTypeVisible).Copy Destination:=Sheets(1).Range("A11")
    .Range("AB7:AB" & fin).SpecialCells(xlCellTypeVisible).Copy Destination:=Sheets(1).Range("F11")
    .Range("AC7:AC" & fin).SpecialCells(xlCellTypeVisible).Copy Destination:=Sheets(1).Range("G11")
End With

End Sub
 
Essaie ce code

VB:
Sub Macro1()

With Sheets("sheet2")
    fin = .Range("A" & .Rows.Count).End(xlUp).Row 'dernière ligne non vide de la colonne A
    .Range("A6:AZ" & fin).AutoFilter Field:=29, Criteria1:="YELLOW", Operator:=xlOr, Criteria2:="RED"
    .Range("A6:AZ" & fin).AutoFilter Field:=24, Criteria1:="YES"
    .Range("A6:AZ" & fin).AutoFilter Field:=28, Criteria1:="<75"

    .Range("F7:F" & fin).SpecialCells(xlCellTypeVisible).Copy Destination:=Sheets(1).Range("A11")
    .Range("AB7:AB" & fin).SpecialCells(xlCellTypeVisible).Copy Destination:=Sheets(1).Range("F11")
    .Range("AC7:AC" & fin).SpecialCells(xlCellTypeVisible).Copy Destination:=Sheets(1).Range("G11")
End With

End Sub
c'est bon pour moi merci !
J'ai réussi a refaire marcher mon code également, j'étais persuadé qu'il était OK mais il devait y avoir une typo...
 
- 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
9
Affichages
383
Réponses
3
Affichages
534
  • Question Question
Microsoft 365 Code VBA
Réponses
6
Affichages
657
Réponses
6
Affichages
857
Réponses
7
Affichages
720
Retour