J'ai une boucle qui doit tourner quelques milliers de fois lors du lancement d'une macro, et j'essaie de l'optimiser. Dans le code j'ai :
Code:
With Nv.Range("B" & Lig & ":C" & Lig & ",E" & Lig & ",I" & Lig & ",K" & Lig & ":U" & Lig)
.FormulaR1C1 = "=INDEX(Films!R2C:R7C,MATCH(RC10,Films!R2C10:R7C10,0))"
.Copy
.PasteSpecial xlPasteValues
End With
C'est une "recherchev multicritère" faite avec index/equiv. Lig correspond à un numéro de ligne (integer) et Nv a une feuille.
Ma question : Peut-on éviter le copier/coller dans ce cas là? Si oui comment? J'ai fait des tests avec Worksheetfunction mais je n'y arrive pas.
Je remercie tous les forumers qui nous aident à nous améliorer. Un jour j'espère pouvoir aider aussi...
Re : INDEX-EQUIV dans plusieurs cellules : eviter le copier-coller dans vba
Bonsoir.
Si vous l'exécutez des milliers de fois c'est que vous l'exécutez sur plusieurs lignes.
Essayez en l'exécutant une seule fois sur toutes les lignes en même temps, d'un coup. Ça devrait marcher.