Bonjour à tous,
j'espère ne pas générer de doublon, je n'ai pas trouvé de solution sur les sujets existants.
J'ai une macro dans laquelle je fais plusieurs copier-coller entre 2 fichiers (dans une boucle for), et j'ai un crash assez bizarre. Le premier passage de la boucle échoue à chaque fois. Je prends l'erreur "La méthode PasteSpecial de la classe Range a échoué"
Si avec le débogage je passe à l'itération suivante, tout se passe bien. Je sais que ce n'est pas lié au fichier (cellules fusionnées, etc) car cette erreur se produit aussi si je change 1ère colonne traitée. Une fois que j'ai eu l'erreur, je peux refaire tourner la macro autant de fois que je veux, je n'ai plus cette erreur.
Voici le code qui pose problème:
Merci pour votre aide!
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
27
28 For i = 7 To 8 Workbooks("rapport.xlsm").Sheets("Macro").Activate country = Cells(i, 1).Value File = Cells(i, 2).Value FilePath = WorkingDirectory & "extract_pays\" & File File1 = "data.xlsx" File1Path = WorkingDirectory & File1 On Error Resume Next Workbooks.Open (File1Path) On Error GoTo 0 If Dir(FilePath) = "" Then MsgBox "Le fichier " & File & " n'existe pas.", vbExclamation, "Message Erreur" Else Workbooks.Open (FilePath) Windows(File).Activate Sheets("summary").Select Range("B:B").Select Selection.Copy Windows(File1).Activate Sheets("Feuil1").Select Cells(1, Application.WorksheetFunction.Match(country, Range("1:1"), 0)).Select Selection.PasteSpecial Paste:=xlPasteValues
Partager