Boucle VBA Excel
Bonsoir à tous,
avant de commencer, je vous remercie par avance, je ne suis pas bon en excel et vba.
J'ai un soucis.
J'ai créé un script shell me permettant de récupérer toutes les logs de backups.
En fonction de ces BKPS, certains sont OK, d'autres KO et d'autres NP (non prévu) .
Donc je récupère bien mon fichier.
Par contre, j'aimerai créé un fichier excel avec une fonction me permettant de récupérer chaque jour les logs des BKPS. Et ceux pour tous les jours du mois de l'année. Donc 12 fichiers pour chaque mois, et chaque ligne pour les jours.
SOMEONE CAN HELP ME PLEASE ???? LOLL
Voici mon début de script vb :
Je ne sais pas comment y introduire une boucle qui me ferait tout cela.
Sub test1()
' test1 Macro
ChDir "D:\report"
Workbooks.Open Filename:="D:\report\BKP_RMAN_100201.xlt", Editable:=True
Range("B1:B40").Select
Selection.Copy
Windows("macro test.xls").Activate
Range("C2").Select
ActiveSheet.Paste
Range("D2").Select
Workbooks.Open Filename:="D:\report\BKP_RMAN_100202.xlt", Editable:=True
Range("B1:B40").Select
Application.CutCopyMode = False
Selection.Copy
Windows("macro test.xls").Activate
ActiveSheet.Paste
Range("E2").Select
End SubMerci .....
-- 04 Mar 2010, 18:25 --
Bonsoir,
en fait ce que j'ai besoin, c'est que l'on m'aide dans le développement d'une boucle me permettant de récupérer ces fameuses logs et les incrémentés dans les bonnes lignes au moins pour un mois.
Pour le reste de l'année je m'en occupe.
Merci à tous,
Cordialement
Bonsoir rahon 93,
Tu peux essayer ce code qui fonctionne chez moi :
Public jour
Sub test1()
Application.ScreenUpdating = False
ChDir "D:\report"
Set FS = Application.FileSearch
With FS
.LookIn = "D:\report\"
.FileType = msoFileTypeAllFiles
For i = 1 To 31
If i < 10 Then jour = "0" & i Else jour = CStr(i)
.Filename = "BKP_RMAN_1002" & jour & ".xlt"
.Execute
If .FoundFiles.Count > 0 Then
Workbooks.Open Filename:=.Filename, Editable:=True
Range("B1:B40").Copy
Windows("macro test.xls").Activate
Range("C2").Offset(0, i - 1).Select
ActiveSheet.Paste
Else
Application.CutCopyMode = False
Exit Sub
End If
Next
End With
Application.ScreenUpdating = False
End SubCependant, d'après ton code, chaque jour se met sur une colonne différente et non pas sur une ligne différente. Mon code en tient compte.
Bon courage et A+