yanns09 | J'ai au point une macro qui permet remplir une feuille en fonction de certaines valeurs et paramètres dans une autre feuille. Elle fonctionne mais la manière dont elle est rédigée disons n'est pas très efficace (^_^)' . En effet si j'ai disons des centaines de données à traiter je sens que ça se transformera en un programme interminable. Pouvez-vous m'aider à le rendre plus compact (optimiser) ? J'ai essayé de passer par des tableaux ou par la fonction "With" mais je me perds entre temps ou alors le programme ne fonctionne plus.
Je vous mets en annexe le code du programme en question.
PS: Le programme fonctionne, il fait le travail mais je souhaite l'optimiser car il ne fait pas très "normalisé"
Merci d'avance pour votre aide.
Code :
- Sub PourOptimiser()
- 'BIA
- Worksheets("Sortie" ).Range("B2:K4" ).Value = 9999
- ligne = 2
- For i = 1 To 2
- For j = 1 To 4
- Worksheets("D - BI" ).Range("X33" ).Value = i
- Worksheets("D - BI" ).Range("X34" ).Value = j
- If _
- Worksheets("D - BI" ).Range("Y33" ).Value >= -0.5 And _
- Worksheets("D - BI" ).Range("Y33" ).Value <= 0.5 And _
- Worksheets("D - BI" ).Range("Y34" ).Value >= -1# And _
- Worksheets("D - BI" ).Range("Y34" ).Value <= 1# _
- Then
- 'On ne fait rien
- Else
- 'BK
- If Worksheets("Resume" ).Range("E65" ).Value < Worksheets("Sortie" ).Cells(ligne, 2).Value Then
- Worksheets("Sortie" ).Cells(ligne, 2).Value = Worksheets("Resume" ).Range("E65" ).Value
- Worksheets("Sortie" ).Cells(ligne, 3).Value = Worksheets("Resume" ).Range("F65" ).Value
- Worksheets("Sortie" ).Cells(ligne, 4).Value = i
- Worksheets("Sortie" ).Cells(ligne, 5).Value = j
- Worksheets("Sortie" ).Cells(ligne, 6).Value = Worksheets("T_C" ).Range("D22" ).Value
- Worksheets("Sortie" ).Cells(ligne, 7).Value = Worksheets("T_C" ).Range("E22" ).Value
- Worksheets("Sortie" ).Cells(ligne, 8).Value = Worksheets("T_C" ).Range("F22" ).Value
- Worksheets("Sortie" ).Cells(ligne, 9).Value = Worksheets("T_C" ).Range("G22" ).Value
- Worksheets("Sortie" ).Cells(ligne, 10).Value = Worksheets("T_C" ).Range("H22" ).Value
- Worksheets("Sortie" ).Cells(ligne, 11).Value = Worksheets("T_C" ).Range("I22" ).Value
- Worksheets("Sortie" ).Cells(ligne, 12).Value = Worksheets("BIA - S" ).Range("B42" ).Value
- Worksheets("Sortie" ).Cells(ligne, 13).Value = Worksheets("BIA - S" ).Range("B44" ).Value
- Worksheets("Sortie" ).Cells(ligne, 14).Value = Worksheets("BIA - S" ).Range("B43" ).Value
- Worksheets("Sortie" ).Cells(ligne, 15).Value = Worksheets("BIA - S" ).Range("C42" ).Value
- Worksheets("Sortie" ).Cells(ligne, 16).Value = Worksheets("BIA - S" ).Range("C44" ).Value
- Worksheets("Sortie" ).Cells(ligne, 17).Value = Worksheets("BIA - S" ).Range("C43" ).Value
- End If
- 'BL
- If Worksheets("Resume" ).Range("E66" ).Value < Worksheets("Sortie" ).Cells(ligne + 1, 2).Value Then
- Worksheets("Sortie" ).Cells(ligne + 1, 2).Value = Worksheets("Resume" ).Range("E66" ).Value
- Worksheets("Sortie" ).Cells(ligne + 1, 3).Value = Worksheets("Resume" ).Range("F66" ).Value
- Worksheets("Sortie" ).Cells(ligne + 1, 4).Value = i
- Worksheets("Sortie" ).Cells(ligne + 1, 5).Value = j
- Worksheets("Sortie" ).Cells(ligne + 1, 6).Value = Worksheets("T_C" ).Range("D23" ).Value
- Worksheets("Sortie" ).Cells(ligne + 1, 7).Value = Worksheets("T_C" ).Range("E23" ).Value
- Worksheets("Sortie" ).Cells(ligne + 1, 8).Value = Worksheets("T_C" ).Range("F23" ).Value
- Worksheets("Sortie" ).Cells(ligne + 1, 9).Value = Worksheets("T_C" ).Range("G23" ).Value
- Worksheets("Sortie" ).Cells(ligne + 1, 10).Value = Worksheets("T_C" ).Range("H23" ).Value
- Worksheets("Sortie" ).Cells(ligne + 1, 11).Value = Worksheets("T_C" ).Range("I23" ).Value
- Worksheets("Sortie" ).Cells(ligne + 1, 12).Value = Worksheets("BIA - S" ).Range("D42" ).Value
- Worksheets("Sortie" ).Cells(ligne + 1, 13).Value = Worksheets("BIA - S" ).Range("D44" ).Value
- Worksheets("Sortie" ).Cells(ligne + 1, 14).Value = Worksheets("BIA - S" ).Range("D43" ).Value
- Worksheets("Sortie" ).Cells(ligne + 1, 15).Value = Worksheets("BIA - S" ).Range("E42" ).Value
- Worksheets("Sortie" ).Cells(ligne + 1, 16).Value = Worksheets("BIA - S" ).Range("E44" ).Value
- Worksheets("Sortie" ).Cells(ligne + 1, 17).Value = Worksheets("BIA - S" ).Range("E43" ).Value
- End If
- 'BM
- If Worksheets("Resume" ).Range("E67" ).Value < Worksheets("Sortie" ).Cells(ligne + 2, 2).Value Then
- Worksheets("Sortie" ).Cells(ligne + 2, 2).Value = Worksheets("Resume" ).Range("E67" ).Value
- Worksheets("Sortie" ).Cells(ligne + 2, 3).Value = Worksheets("Resume" ).Range("F67" ).Value
- Worksheets("Sortie" ).Cells(ligne + 2, 4).Value = i
- Worksheets("Sortie" ).Cells(ligne + 2, 5).Value = j
- Worksheets("Sortie" ).Cells(ligne + 2, 6).Value = Worksheets("T_C" ).Range("D24" ).Value
- Worksheets("Sortie" ).Cells(ligne + 2, 7).Value = Worksheets("T_C" ).Range("E24" ).Value
- Worksheets("Sortie" ).Cells(ligne + 2, 8).Value = Worksheets("T_C" ).Range("F24" ).Value
- Worksheets("Sortie" ).Cells(ligne + 2, 9).Value = Worksheets("T_C" ).Range("G24" ).Value
- Worksheets("Sortie" ).Cells(ligne + 2, 10).Value = Worksheets("T_C" ).Range("H24" ).Value
- Worksheets("Sortie" ).Cells(ligne + 2, 11).Value = Worksheets("T_C" ).Range("I24" ).Value
- Worksheets("Sortie" ).Cells(ligne + 2, 12).Value = Worksheets("BIA - S" ).Range("F42" ).Value
- Worksheets("Sortie" ).Cells(ligne + 2, 13).Value = Worksheets("BIA - S" ).Range("F44" ).Value
- Worksheets("Sortie" ).Cells(ligne + 2, 14).Value = Worksheets("BIA - S" ).Range("F43" ).Value
- Worksheets("Sortie" ).Cells(ligne + 2, 15).Value = Worksheets("BIA - S" ).Range("G42" ).Value
- Worksheets("Sortie" ).Cells(ligne + 2, 16).Value = Worksheets("BIA - S" ).Range("G44" ).Value
- Worksheets("Sortie" ).Cells(ligne + 2, 17).Value = Worksheets("BIA - S" ).Range("G43" ).Value
- End If
- End If
- Next
- Next
- End Sub
|
|