Aide sur les boucles
Voilà mon code:
Sub Essai99()
Dim x As Integer, y As Integer, L1 as Integer, C1 as Integer, L2 as Integer, C2 as Integer
y = 6
For x = 10 To 30 Step 5
Sheets("2013a").Cells(x, y) = "PJ"
Sheets("2013a").Cells(x + 1, y) = "CA"
Next x
L1 = 3
C1 = 4
L2 = 6
C2 = 10
Do Until L1 = 17
If Sheets("Temp").Cells(L1, C1).Value = "AR" Then Sheets("2013a").Cells(L2 + 0, C2).Value = "PJ"
If Sheets("Temp").Cells(L1, C1).Value = "AR" Then Sheets("2013a").Cells(L2 + 1, C2).Value = "RU"
L1 = L1 + 1
L2 = L2 + 5
Loop
End Sub
Le code fonctionne bien.
Mon problème : je dois le refaire 52 fois!
C'est-à-dire à la fin du Loop,
Je dois reprendre les valeurs initiales de y-L1-C1-L2-C2-Do Until avec les modifications suivantes:
rajouter 8 à y; donc y=y+8 (6;14;22;30.....)
rajouter 7 à L1; donc L1=L1+7 (3;10;17;24.....)
C1 n'est pas modifié = 4, c'est un constant (4;4;4;4.....)
L2 n'est pas modifié = 6, c'est un constant (6;6;6;6....)
rajouter 8 à C2; donc C2=C2+8 (10;18;26;34.....)
rajouter 7 à Do Until L1= (10;17;24;31...)
Les nouvelles valeurs de y-L1-C1-L2-C2-Do Until ... sont reinjectées au début et le Loop se fait,
pour générer une 2e série de résultats,
ainsi de suite,
jusqu'à ce que y atteint la valeur de 6+(52x8)= 422
Votre sera très appréciée.
ha61@hotmail.fr
Bonjour
A tester
Option Explicit
Sub Essai99()
Dim I As Integer
Dim x As Integer, y As Integer, L1 As Integer, C1 As Integer, L2 As Integer, C2 As Integer
For I = 0 To 52 ' Faire 53 fois
y = 6 + (I * 8)
For x = 10 To 30 Step 5
Sheets("2013a").Cells(x, y) = "PJ"
Sheets("2013a").Cells(x + 1, y) = "CA"
Next x
L1 = 3 + (I * 7)
C1 = 4
L2 = 6
C2 = 10 + (I * 8)
Do Until L1 = 10 + (I * 7) '17
If Sheets("Temp").Cells(L1, C1).Value = "AR" Then Sheets("2013a").Cells(L2 + 0, C2).Value = "PJ"
If Sheets("Temp").Cells(L1, C1).Value = "AR" Then Sheets("2013a").Cells(L2 + 1, C2).Value = "RU"
L1 = L1 + 1
L2 = L2 + 5
Loop
Next I
End SubJe vous suis très reconnaissant. Votre solution est parfaite. Le code marche à merveille. Je vous en remercie.