Bonsoir à tous,
Je commence à programmer avec les Arrays pour accélérer mes macros, par contre je n'arrive pas a faire évoluer les variables et a copier mes résultats. J'ai trouvé beaucoup de documents sur le sujet mais je coince sur ce cas.
Petite explication sur la demande:
J'ai huit variables situées de J1 à Q1 et elles évoluent de 1 à 4
Il y a un petit tableau A2:G8 qui reprend les 8 variables avec une opération simple (tableau A)
Un tableau R1:X1 (Tableau B) qui est le résultat de la somme par colonne du tableau A.
Je veux que pour chaque évolution de variables, recalcule et affichage du tableau B
Une macro (TestMacro1) existe pour comparer les résultats obtenus
Un grand merci par avance
Nota: Je viens de me rendre compte que la macro ne fonctionne pas en version 97-2003 à cause du nombre de lignes disponibles insuffisantes.
Avec ce code modifié cela fonctionne pour la version 97-2003 même si les derniers résultats ne sont pas affichés.
Je commence à programmer avec les Arrays pour accélérer mes macros, par contre je n'arrive pas a faire évoluer les variables et a copier mes résultats. J'ai trouvé beaucoup de documents sur le sujet mais je coince sur ce cas.
Petite explication sur la demande:
J'ai huit variables situées de J1 à Q1 et elles évoluent de 1 à 4
Il y a un petit tableau A2:G8 qui reprend les 8 variables avec une opération simple (tableau A)
Un tableau R1:X1 (Tableau B) qui est le résultat de la somme par colonne du tableau A.
Je veux que pour chaque évolution de variables, recalcule et affichage du tableau B
Une macro (TestMacro1) existe pour comparer les résultats obtenus
Un grand merci par avance
Nota: Je viens de me rendre compte que la macro ne fonctionne pas en version 97-2003 à cause du nombre de lignes disponibles insuffisantes.
Avec ce code modifié cela fonctionne pour la version 97-2003 même si les derniers résultats ne sont pas affichés.
Code:
Sub TestMacro1()
Dim a As Byte, b As Byte, c As Byte, d As Byte, e As Byte, f As Byte, g As Byte, h As Byte
Dim strOps As String
Dim tStart As Double, tEnd As Double
Application.ScreenUpdating = False
tStart = Time
Range("J2:X65530").ClearContents
For a = 1 To 4
Range("J1") = a
For b = 1 To 4
Range("K1") = b
For c = 1 To 4
Range("L1") = c
For d = 1 To 4
Range("M1") = d
For e = 1 To 4
Range("N1") = e
For f = 1 To 4
Range("O1") = f
For g = 1 To 4
Range("P1") = g
For h = 1 To 4
Range("Q1") = h
StsBar strOps & " a=" & a & " b=" & b & " c=" & c & " d=" & d & " e=" & e & " f=" & f & " g=" & g & " h=" & h
Range("J65530").End(xlUp)(2).Resize(1, 15).Value = Range("J1:X1").Value
Next
Next
Next
Next
Next
Next
Next
Next
tEnd = Time
Range("AA1") = Format(tEnd - tStart, "HH:MM:SS")
ActiveWorkbook.Save
Application.ScreenUpdating = True
End Sub
Pièces jointes
Dernière édition: