Bonjour à tous,
J'ai créé une macro pour générer des rapports automatiquement.
Si je fais la macro en pas à pas (F8) aucun problème j'ai bien tout mes fichiers avec les bonnes informations, mais si je lance la macro en auto tous les fichiers on le même résultat.
Ma compréhension c'est que le RefreshAll , n'a pas le temps de finir que le "Next i" et déjà lancer donc ils ont tous le même résultat.
J'ai essayé avec DoEvent même résultat quelqu'un a une idée pour forcer Excel a attendre la fin du RefreshAll ?
Merci à vous
voici la macro
J'ai créé une macro pour générer des rapports automatiquement.
Si je fais la macro en pas à pas (F8) aucun problème j'ai bien tout mes fichiers avec les bonnes informations, mais si je lance la macro en auto tous les fichiers on le même résultat.
Ma compréhension c'est que le RefreshAll , n'a pas le temps de finir que le "Next i" et déjà lancer donc ils ont tous le même résultat.
J'ai essayé avec DoEvent même résultat quelqu'un a une idée pour forcer Excel a attendre la fin du RefreshAll ?
Merci à vous
voici la macro
Code:
Sub rapport()
Dim DL As Long
DL = Range("A1048576").End(xlUp).Row
For i = 2 To DL
Sheets("Feuil1").Select
Range("A" & i).Select
Selection.Copy
client = Range("A" & i).Value
Sheets("Ventes Flavia 2013").Select
Range("B4").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Feuil1").Select
Range("A" & i).Select
Selection.Copy
Sheets("Ventes Flavia 2014").Select
Range("B4").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWorkbook.RefreshAll
Application.ScreenUpdating = False
With ThisWorkbook
.Sheets(Array("Ventes Flavia 2013", "Ventes Flavia 2014")).Copy
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:= _
"C:\Users\david\Documents\test\" & client & " - Flavia (2013-2014).xls"
Application.DisplayAlerts = True
ActiveWorkbook.Close
End With
Next i
End Sub