Copier le résultat d'un filtre et coller dans une autre feuille

Fermé
icecube - 4 déc. 2017 à 18:32
thev Messages postés 1887 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 24 novembre 2024 - 5 déc. 2017 à 19:06
Bonjour,

je vous expose mon problème

j'ai une macro qui doit ouvrir un fichier excel. faire un filtre sur la feuil nommé "RESULt_1505".

copier toutes les lignes du résultat du filtre en suite coller ces lignes une feuille nommé "source".

voici mon code et c'est la dernière ligne qui ne marche pas.

merci pour votre aide.

Sub Ouvre()
Dim wb As Workbook

Workbooks.Open ("C:\Users\tabello\Desktop\extraction\COMPARISON_1505.xlsx")

Worksheets("RESULT_1505").Range("A1:V6565").AutoFilter Field:=4, Criteria1:="TOTAL"

Range("A2:w6565" & Range("A6565").End(xlUp).Row).Select

Selection.Copy Destination:=Sheets("source").Range("A2:w6565")


End Sub



A voir également:

2 réponses

thev Messages postés 1887 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 24 novembre 2024 691
4 déc. 2017 à 22:19
Bonsoir,

Essayer ceci
    Workbooks.Open ("C:\Users\tabello\Desktop\extraction\COMPARISON_1505.xlsx")

Worksheets("RESULT_1505").Range("A1:V6565").AutoFilter Field:=4, Criteria1:="TOTAL"
Sheets("RESULT_1505").Range("A1:V6565").SpecialCells(xlCellTypeVisible).Copy Sheets("source").Range("A2")
0
Bonjour,

j'ai toujours l'erreur a la derniere ligne : l'indice n'appartient pas a la selection.

sachant que la feuil "source" est dans un autre classeur. c'est pour etre du au fait que c'est deux classeur différent ??
0
thev Messages postés 1887 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 24 novembre 2024 691
Modifié le 5 déc. 2017 à 19:09
Effectivement. Si le classeur n'est pas spécifié devant la feuille, le classeur actif est pris par défaut ( C:\Users\tabello\Desktop\extraction\COMPARISON_1505.xlsx)

Sheets("source").Range("A2") 
équivaut à
ActiveWorkBook.Sheets("source").Range("A2")

Pour spécifier le classeur auquel appartient le code :
ThisWorkBook.Sheets("source").Range("A2")

 
0