Bonjour,
Certes ce titre peut paraitre un peu alambiqué mais je ne vois pas d'autre moyen d'expliquer mon probleme.
Pour faire simple voici ce que je fais :
Dans un fichier d'environ 50000 lignes j'insere 3 colonnes 3 fois (Donc 9 colonnes en tout) a des endroits differents.
Ensuite dans les trois premieres cellules des colonnes inserées je saisis (via VB) une formule de recherche vertical sur une reference dans une colonne a coté.
cette formule quasi identique dans les 3 celulles (avec juste une reference differente).
Ensuite je vais jusqu'en bas de mes données, fait une selection etendue jusqu'a mes trois cellule avec mes formules et je les "recopier vers le bas"...
cette Opération prend disons 1 minutes.
Ensuite je fais un "copier/collage special-valeurs" sur toutes les cellules ou il y a la formule.
Donc je me retrouve avec mes 3 premieres colonnes inserées pleines de valeurs, donc plus de formule dans les cellules.
Ensuite je recommence exactement la meme operation sur ma deuxieme serie de 3 colonnes insérées.(je boucle avec un while donc c'est exactement les meme instruction et les meme formules). Le probleme (on y arrive enfin) c'est que la deuxieme fois l'action met disons 3 minutes.... Et pour les trois dernieres colonnes cela met 6 minutes.
Alors ma question est : Quelqu'un serait t'il comment faire en sorte que le temps de traitement des 3 actions soient le meme ?
Y a t'il une instruction qui permet de "vider" la memoire "copier/coller" sans reinitialiser les variables (et autre que "Apllication.CutCopyMode = False" que j'utilise deja)
Je ne peux pas vous mettre mon code pour le moment car c'est sur mon lieu de travail... mais peut etre que quelqu'un comprendra ma description (quelque peu hasardeuse certe... mais comprehensible je l'espere).
je vous remercie par avance.
Partager