Bonjour a tous,
J'ai récupérée une macro que je vous joint ci-dessous dans le code, qui été prévus pour faire une copie d'une feuille en fonction que si la date en en "A" de la première feuille soit identique à la deuxième sinon il ce passe rien. Je les modifiés pour ouvrir un classeur et faire la copie suivant les dates, et la est mon problème. La macro vas chercher une date dans une cellule donnée sur le classeur Etape 1 et vas chercher dans le classeur etape 2 une autre cellule donnée pour vérifier si les deux dates sont identique elle copie, alors que moi dans mon fichier les dates son bien en colonne A mes elle peuvent ce trouver au millier en bas ect. donc je ne peux avoir une cellule fixe pour la recherche. j'ai essayé plusieurs possibilité et je n'arrive pas du tout a un bon résultat.
Pour une meilleur compréhension je vous joint mes deux fichier de test Etape 1 avec la macro et Etape 2 qui reçois la copie
Pouvez vous m'aider
Merci bien a tous
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 Sub testcpd() ' wsd = référence de la feuille données Set wsd = Worksheets("test1") 'dld dernière ligne de la feuille données sur base de la colonne A dld = wsd.Range("A" & Rows.Count).End(xlUp).Row ' wsc référence du classeur et de la feuille Set wsc = Workbooks.Open("Etape2.xlsx").Worksheets("SOURCE") ' on recherche en ligne 5, la date qui se trouve en B1 sur wsd, on met le résultat dans un range nommé re Set re = wsc.Rows("1:3").Find(wsd.Range("A3"), lookat:=xlWhole) ' si re n'est pas vide = on Affiche If Not re Is Nothing Then ' on copie la plage A3:AE72 du fichier test1 wsd.Range("A3:AE72").Copy ' à partir de la cellule en ligne 3 dans la colonne dans laquelle on a trouvé la date wsc.Cells(3, re.Column).PasteSpecial Paste:=xlValues End If End Sub
Partager