Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Boucle selon 2 variables

1 réponse
Avatar
stormtroopertk1230
Bonjour,

Je voudrai faire une boucle en fonction de la terminaison du fichier, XA, XB, XC, jusqu'à XZ...

En activant le classeur Feuille_temps_XA_112011.xls, la macro va copier les données de la range B2:E6 sur le classeur Suivi_2011.xls, onglet 11 de la range B5:E9,
puis faire copier les données du classeur Feuille_temps_XB_112011.xls de la même range ( (car les fichiers sont identiques), mais à un autre endroit du Suivi_2011.xls, onglet 11 soit B12:B16.
Je voudrai que la macro puisse gérer les noms variants _XA_, _XB_ jusqu'à XZ.. et les copier sur les destinations différéntes.
Merci de votre aide.

Windows("Feuille_temps_XA_112011.xls").Activate
Sheets("Feuille").Select
Range("B2:E6").Select
Selection.Copy
Windows("Suivi_2011.xls").Activate
Sheets("11").Select
Range("B5:E9").Select
Selection.PasteSpecial Paste:=xlPasteValues

Windows("Feuille_temps_XB_112011.xls").Activate
Sheets("Feuille").Select
Range("B2:E6").Select
Selection.Copy
Windows("Suivi_2011.xls").Activate
Sheets("11").Select
Range("B12:E16").Select
Selection.PasteSpecial Paste:=xlPasteValues

1 réponse

Avatar
DanielCo
Bonjour,
Essaie cette macro à mettre dans le classeur cible :

Sub test()
Dim c As Range, Sh As Worksheet, Chemin As String, Fichier As String,
Ligne As Integer
Chemin = "c:temp" 'à modifier
Set Sh = ThisWorkbook.Sheets("11") 'si 11 est le numéro d'index,
modifier
For i = 1 To 26
Fichier = "Feuille_temps_X" & Left(Cells(1, i).Address(0, 0), 1) &
"_112011.xls"
Workbooks.Open Chemin & "" & Fichier
[B2:E6].Copy ' pas d'indication sur la feuille
Sh.[B5].Offset(Ligne).PasteSpecial xlPasteValues
Ligne = Ligne + 5
ActiveWorkbook.Close False
Next i
End Sub

PS. Je ne l'ai pas testé.
Cordialement.
Daniel


Bonjour,

Je voudrai faire une boucle en fonction de la terminaison du fichier, XA, XB,
XC, jusqu'à XZ...

En activant le classeur Feuille_temps_XA_112011.xls, la macro va copier les
données de la range B2:E6 sur le classeur Suivi_2011.xls, onglet 11 de la
range B5:E9,
puis faire copier les données du classeur Feuille_temps_XB_112011.xls de la
même range ( (car les fichiers sont identiques), mais à un autre endroit du
Suivi_2011.xls, onglet 11 soit B12:B16.
Je voudrai que la macro puisse gérer les noms variants _XA_, _XB_ jusqu'à
XZ.. et les copier sur les destinations différéntes.
Merci de votre aide.

Windows("Feuille_temps_XA_112011.xls").Activate
Sheets("Feuille").Select
Range("B2:E6").Select
Selection.Copy
Windows("Suivi_2011.xls").Activate
Sheets("11").Select
Range("B5:E9").Select
Selection.PasteSpecial Paste:=xlPasteValues

Windows("Feuille_temps_XB_112011.xls").Activate
Sheets("Feuille").Select
Range("B2:E6").Select
Selection.Copy
Windows("Suivi_2011.xls").Activate
Sheets("11").Select
Range("B12:E16").Select
Selection.PasteSpecial Paste:=xlPasteValues