Copier Coller des données avec un filtre avancé VBA

Bonjour à tous

J'ai un fichier Excel avec deux feuilles :

EmployeeInfo qui contient les infos de mes employés

Analysis qui est une feuille vide initialement

Dans la feuille EmployeeInfo, je voudrais récuperer les lignes pour lesquelles la date dans la colonne K est supérieure au 25/02/2019 et les coller dans la feuille Analysis.

Voici mon code mais il ne fonctionne pas. J'ai comme message d'erreur "This can't be applied to the selected range. Select a single cell in a range and try again".

Sub Button4_Click()

With Worksheets("EmployeeInfo")

'BC1 = contract_start (nom de la colonne K1) et BC2 = >=2/25/2019
Range("A1:K12500").AdvancedFilter _
Action:=xlFilterInPlace, _
CriteriaRange:=Range("BC1:BC2"), _
CopyToRange:=Sheets("Analysis").Range("A1:K12500"), _
Unique:=False

End With
End Sub

Pourriez-vous m'éclairer svp ?

Bonjour,

Tu noteras que, sans fichier exemple, on ne pourra pas vérifier si les critères sont correctement écrits, si le tableau est bien construit, etc.

Par contre, si tu écris

With Worksheets("EmployeeInfo")

... il faut sans doute ajouter un point devant toutes les références figurant dans cette feuille.

D'autre part, si ton tableau source fait 12500 lignes, il y a fort à parier que le résultat du filtre en compte moins ... c'est sans doute là le sens du message d'erreur

Avec

CopyToRange:=Sheets("Analysis").Range("A1:K1")

serait-ce mieux (en imaginant que le nombre de colonnes soit correct !?)

Merci beaucoup, l'erreur vient en effet du nombre de lignes à copier ! Maintenant tout marche bien

Je voulais joindre mon fichier mais il est trop lourd..

Bonne journée

bonjour

le principe est de ne pas copier/coller (ni au clavier, ni par VBA)

il suffit de créer un TCD et de mettre un filtre (si besoin créer un paramètre)

les TCD servent aussi à faire des filtres trèèèèès puissants

exemple joint

edit salut U. Milité

amitiés à tous

16classeur4.xlsx (16.77 Ko)
Rechercher des sujets similaires à "copier coller donnees filtre avance vba"