For i =3D 1 To n
For j =3D 1 To n1
[debut1].Cells(i, j).Value =3D tab1(i, j)
Next j
For j =3D 1 To n2
[debut2].Cells(i, j).Value =3D tab2(i, j)
Next j
Next i
En fait, je fais des calculs que je stocke dans des=20
tableaux (tab1 et tab2).
A la fin du code je souhaite =E9crire ces tableaux sur ma=20
feuille excel (cf code ci dessus).
Le probl=E8me est que cette =E9criture prend beaucoup de temps.
Y a t-il moyen d'optimiser ce code par une =E9criture plus=20
rapide ?
Note: Les boucles sont normalement assez rapides quand même sauf que si tu as le calcul automatique activé, Excel recalcule à chaque ajout. Mieux vaut mettre le calcul à Manuel AVANT les boucles imbriquées pour le remettre à Automatique ensuite.
Application.Calculation = xlCalculationManual ... le code des boucles (ou le mien) ici Application.Calculation = xlCalculationAutomatic
Salutations,
Daniel M.
"pierref" wrote in message news:0ae401c3da85$cbaaf4b0$ Bonjour,
J'ai le code suivant en vba :
For i = 1 To n For j = 1 To n1 [debut1].Cells(i, j).Value = tab1(i, j) Next j For j = 1 To n2 [debut2].Cells(i, j).Value = tab2(i, j) Next j Next i
En fait, je fais des calculs que je stocke dans des tableaux (tab1 et tab2). A la fin du code je souhaite écrire ces tableaux sur ma feuille excel (cf code ci dessus). Le problème est que cette écriture prend beaucoup de temps.
Y a t-il moyen d'optimiser ce code par une écriture plus rapide ?
Note: Les boucles sont normalement assez rapides quand même sauf que si tu as le
calcul automatique activé, Excel recalcule à chaque ajout.
Mieux vaut mettre le calcul à Manuel AVANT les boucles imbriquées pour le
remettre à Automatique ensuite.
Application.Calculation = xlCalculationManual
... le code des boucles (ou le mien) ici
Application.Calculation = xlCalculationAutomatic
Salutations,
Daniel M.
"pierref" <anonymous@discussions.microsoft.com> wrote in message
news:0ae401c3da85$cbaaf4b0$a101280a@phx.gbl...
Bonjour,
J'ai le code suivant en vba :
For i = 1 To n
For j = 1 To n1
[debut1].Cells(i, j).Value = tab1(i, j)
Next j
For j = 1 To n2
[debut2].Cells(i, j).Value = tab2(i, j)
Next j
Next i
En fait, je fais des calculs que je stocke dans des
tableaux (tab1 et tab2).
A la fin du code je souhaite écrire ces tableaux sur ma
feuille excel (cf code ci dessus).
Le problème est que cette écriture prend beaucoup de temps.
Y a t-il moyen d'optimiser ce code par une écriture plus
rapide ?
Note: Les boucles sont normalement assez rapides quand même sauf que si tu as le calcul automatique activé, Excel recalcule à chaque ajout. Mieux vaut mettre le calcul à Manuel AVANT les boucles imbriquées pour le remettre à Automatique ensuite.
Application.Calculation = xlCalculationManual ... le code des boucles (ou le mien) ici Application.Calculation = xlCalculationAutomatic
Salutations,
Daniel M.
"pierref" wrote in message news:0ae401c3da85$cbaaf4b0$ Bonjour,
J'ai le code suivant en vba :
For i = 1 To n For j = 1 To n1 [debut1].Cells(i, j).Value = tab1(i, j) Next j For j = 1 To n2 [debut2].Cells(i, j).Value = tab2(i, j) Next j Next i
En fait, je fais des calculs que je stocke dans des tableaux (tab1 et tab2). A la fin du code je souhaite écrire ces tableaux sur ma feuille excel (cf code ci dessus). Le problème est que cette écriture prend beaucoup de temps.
Y a t-il moyen d'optimiser ce code par une écriture plus rapide ?
Par avance merci
pierref
Christian.L
Bonjour
Pourquoi ne pas faire les calculs directement dans la cellule de résultat
C.L.
"pierref" a écrit dans le message de news:0ae401c3da85$cbaaf4b0$ Bonjour,
J'ai le code suivant en vba :
For i = 1 To n For j = 1 To n1 [debut1].Cells(i, j).Value = tab1(i, j) Next j For j = 1 To n2 [debut2].Cells(i, j).Value = tab2(i, j) Next j Next i
En fait, je fais des calculs que je stocke dans des tableaux (tab1 et tab2). A la fin du code je souhaite écrire ces tableaux sur ma feuille excel (cf code ci dessus). Le problème est que cette écriture prend beaucoup de temps.
Y a t-il moyen d'optimiser ce code par une écriture plus rapide ?
Par avance merci
pierref
Bonjour
Pourquoi ne pas faire les calculs directement dans la cellule de résultat
C.L.
"pierref" <anonymous@discussions.microsoft.com> a écrit dans le message de
news:0ae401c3da85$cbaaf4b0$a101280a@phx.gbl...
Bonjour,
J'ai le code suivant en vba :
For i = 1 To n
For j = 1 To n1
[debut1].Cells(i, j).Value = tab1(i, j)
Next j
For j = 1 To n2
[debut2].Cells(i, j).Value = tab2(i, j)
Next j
Next i
En fait, je fais des calculs que je stocke dans des
tableaux (tab1 et tab2).
A la fin du code je souhaite écrire ces tableaux sur ma
feuille excel (cf code ci dessus).
Le problème est que cette écriture prend beaucoup de temps.
Y a t-il moyen d'optimiser ce code par une écriture plus
rapide ?
Pourquoi ne pas faire les calculs directement dans la cellule de résultat
C.L.
"pierref" a écrit dans le message de news:0ae401c3da85$cbaaf4b0$ Bonjour,
J'ai le code suivant en vba :
For i = 1 To n For j = 1 To n1 [debut1].Cells(i, j).Value = tab1(i, j) Next j For j = 1 To n2 [debut2].Cells(i, j).Value = tab2(i, j) Next j Next i
En fait, je fais des calculs que je stocke dans des tableaux (tab1 et tab2). A la fin du code je souhaite écrire ces tableaux sur ma feuille excel (cf code ci dessus). Le problème est que cette écriture prend beaucoup de temps.
Y a t-il moyen d'optimiser ce code par une écriture plus rapide ?
Par avance merci
pierref
pierref
merci bcp
finalement j'ai meme fait
range("A1:A" & nb) = tab1
Et ca tourne bcp plus vite que mes boucles !!
a+
-----Message d'origine----- Bonjour,
J'ai le code suivant en vba :
For i = 1 To n For j = 1 To n1 [debut1].Cells(i, j).Value = tab1(i, j) Next j For j = 1 To n2 [debut2].Cells(i, j).Value = tab2(i, j) Next j Next i
En fait, je fais des calculs que je stocke dans des tableaux (tab1 et tab2). A la fin du code je souhaite écrire ces tableaux sur ma feuille excel (cf code ci dessus). Le problème est que cette écriture prend beaucoup de temps.
Y a t-il moyen d'optimiser ce code par une écriture plus rapide ?
Par avance merci
pierref .
merci bcp
finalement j'ai meme fait
range("A1:A" & nb) = tab1
Et ca tourne bcp plus vite que mes boucles !!
a+
-----Message d'origine-----
Bonjour,
J'ai le code suivant en vba :
For i = 1 To n
For j = 1 To n1
[debut1].Cells(i, j).Value = tab1(i, j)
Next j
For j = 1 To n2
[debut2].Cells(i, j).Value = tab2(i, j)
Next j
Next i
En fait, je fais des calculs que je stocke dans des
tableaux (tab1 et tab2).
A la fin du code je souhaite écrire ces tableaux sur ma
feuille excel (cf code ci dessus).
Le problème est que cette écriture prend beaucoup de
temps.
Y a t-il moyen d'optimiser ce code par une écriture plus
rapide ?
For i = 1 To n For j = 1 To n1 [debut1].Cells(i, j).Value = tab1(i, j) Next j For j = 1 To n2 [debut2].Cells(i, j).Value = tab2(i, j) Next j Next i
En fait, je fais des calculs que je stocke dans des tableaux (tab1 et tab2). A la fin du code je souhaite écrire ces tableaux sur ma feuille excel (cf code ci dessus). Le problème est que cette écriture prend beaucoup de temps.
Y a t-il moyen d'optimiser ce code par une écriture plus rapide ?
Par avance merci
pierref .
Daniel.M
Salut,
range("A1:A" & nb) = tab1
Ton code fonctionne avec des tableaux qui n'ont qu'UNE colonne. Ton exemple montrait des tableaux avec plusieurs colonnes (2e boucle imbriquée: For j=1 to n1).
Salutations,
Daniel M.
Salut,
range("A1:A" & nb) = tab1
Ton code fonctionne avec des tableaux qui n'ont qu'UNE colonne.
Ton exemple montrait des tableaux avec plusieurs colonnes (2e boucle imbriquée:
For j=1 to n1).
Ton code fonctionne avec des tableaux qui n'ont qu'UNE colonne. Ton exemple montrait des tableaux avec plusieurs colonnes (2e boucle imbriquée: For j=1 to n1).
Salutations,
Daniel M.
Michel Pierron
Bonjour Daniel; Décidément, ta logique de raisonnement me "surleculte" toujours; nous les béotiens, on aborde le problème en partant du début vers la solution et toi, tu "peaudelapinises" le problème en remontant du résultat vers le début. :-))) MP
Note: Les boucles sont normalement assez rapides quand même sauf que si tu as le calcul automatique activé, Excel recalcule à chaque ajout. Mieux vaut mettre le calcul à Manuel AVANT les boucles imbriquées pour le remettre à Automatique ensuite.
Application.Calculation = xlCalculationManual ... le code des boucles (ou le mien) ici Application.Calculation = xlCalculationAutomatic
Salutations,
Daniel M.
"pierref" wrote in message news:0ae401c3da85$cbaaf4b0$ Bonjour,
J'ai le code suivant en vba :
For i = 1 To n For j = 1 To n1 [debut1].Cells(i, j).Value = tab1(i, j) Next j For j = 1 To n2 [debut2].Cells(i, j).Value = tab2(i, j) Next j Next i
En fait, je fais des calculs que je stocke dans des tableaux (tab1 et tab2). A la fin du code je souhaite écrire ces tableaux sur ma feuille excel (cf code ci dessus). Le problème est que cette écriture prend beaucoup de temps.
Y a t-il moyen d'optimiser ce code par une écriture plus rapide ?
Par avance merci
pierref
Bonjour Daniel;
Décidément, ta logique de raisonnement me "surleculte" toujours; nous les
béotiens, on aborde le problème en partant du début vers la solution et toi, tu
"peaudelapinises" le problème en remontant du résultat vers le début.
:-))) MP
"Daniel.M" <prenom.maher@bigfoot.inutil.com> a écrit dans le message de
news:eNtDJOr2DHA.2336@TK2MSFTNGP09.phx.gbl...
Note: Les boucles sont normalement assez rapides quand même sauf que si tu as le
calcul automatique activé, Excel recalcule à chaque ajout.
Mieux vaut mettre le calcul à Manuel AVANT les boucles imbriquées pour le
remettre à Automatique ensuite.
Application.Calculation = xlCalculationManual
... le code des boucles (ou le mien) ici
Application.Calculation = xlCalculationAutomatic
Salutations,
Daniel M.
"pierref" <anonymous@discussions.microsoft.com> wrote in message
news:0ae401c3da85$cbaaf4b0$a101280a@phx.gbl...
Bonjour,
J'ai le code suivant en vba :
For i = 1 To n
For j = 1 To n1
[debut1].Cells(i, j).Value = tab1(i, j)
Next j
For j = 1 To n2
[debut2].Cells(i, j).Value = tab2(i, j)
Next j
Next i
En fait, je fais des calculs que je stocke dans des
tableaux (tab1 et tab2).
A la fin du code je souhaite écrire ces tableaux sur ma
feuille excel (cf code ci dessus).
Le problème est que cette écriture prend beaucoup de temps.
Y a t-il moyen d'optimiser ce code par une écriture plus
rapide ?
Bonjour Daniel; Décidément, ta logique de raisonnement me "surleculte" toujours; nous les béotiens, on aborde le problème en partant du début vers la solution et toi, tu "peaudelapinises" le problème en remontant du résultat vers le début. :-))) MP
Note: Les boucles sont normalement assez rapides quand même sauf que si tu as le calcul automatique activé, Excel recalcule à chaque ajout. Mieux vaut mettre le calcul à Manuel AVANT les boucles imbriquées pour le remettre à Automatique ensuite.
Application.Calculation = xlCalculationManual ... le code des boucles (ou le mien) ici Application.Calculation = xlCalculationAutomatic
Salutations,
Daniel M.
"pierref" wrote in message news:0ae401c3da85$cbaaf4b0$ Bonjour,
J'ai le code suivant en vba :
For i = 1 To n For j = 1 To n1 [debut1].Cells(i, j).Value = tab1(i, j) Next j For j = 1 To n2 [debut2].Cells(i, j).Value = tab2(i, j) Next j Next i
En fait, je fais des calculs que je stocke dans des tableaux (tab1 et tab2). A la fin du code je souhaite écrire ces tableaux sur ma feuille excel (cf code ci dessus). Le problème est que cette écriture prend beaucoup de temps.
Y a t-il moyen d'optimiser ce code par une écriture plus rapide ?
Par avance merci
pierref
Daniel.M
Salut Michel,
... et toi, tu "peaudelapinises" le problème
Merci pour cet ajout à mon vocabulaire. Merci beaucoup ;-))
Daniel M.
Salut Michel,
... et toi, tu "peaudelapinises" le problème
Merci pour cet ajout à mon vocabulaire. Merci beaucoup ;-))