Bonjour à tous,
J'ai réalisé un programme sur VBA qui traite une très grand nombre d'informations. Pouvant aller jusqu'a ouvrire et fermer des dixaines de fichier excel.
Mon problème est que lorsque j'ouvre certain fichier, l'execution du programme devient très lente.
Le programme effectuer des importations de colonne d'un fichier à l'autres ainsi que le remplacement de valeur éronées.
Mon code ne contient pas d'instruction .activate ou .select.
Si je dois importer 30 colonnes du fichier 1 de l'onglet 1 vers le fichier 2 de l'onglet 2, j'effectue une boucle while avec à chaque eecution l'ordre de passer à la colonne suivante.
Ma questions est comment faire pour que l'execution soit plus rapide ?
Les boucle while sont elles à éviter ?
Peut on utiliser une solution extérieur, c'est à dire un programme fait sur VB6 ou VB express édition 2008 ? Cela va il changer quelque chose ou la lenteur de l'execution vient du fait que les fichier Excel sont trop gros ?
Dans un de mes fichiers peux se trouver 30 onglets avec ds tableau de 5000 lignes, lié entre eux par des pointeurs. ainsi que des calculs par formule. Cela peut il expliquer la lenteur de VBA à manipuler ses fichiers ?
Je n'attend pas de "solutions" miracle mais c'est plus une discutions sur les possibilité de remédier au problème de lenteur par l'ulilisation d'auter chose que VBA et surtout d'identifier les causes d'un ralentissement d'execution d'un programme.
Merci par avance pour votre aide.
Cordialement
Vorens
J'ai réalisé un programme sur VBA qui traite une très grand nombre d'informations. Pouvant aller jusqu'a ouvrire et fermer des dixaines de fichier excel.
Mon problème est que lorsque j'ouvre certain fichier, l'execution du programme devient très lente.
Le programme effectuer des importations de colonne d'un fichier à l'autres ainsi que le remplacement de valeur éronées.
Mon code ne contient pas d'instruction .activate ou .select.
Si je dois importer 30 colonnes du fichier 1 de l'onglet 1 vers le fichier 2 de l'onglet 2, j'effectue une boucle while avec à chaque eecution l'ordre de passer à la colonne suivante.
Ma questions est comment faire pour que l'execution soit plus rapide ?
Les boucle while sont elles à éviter ?
Peut on utiliser une solution extérieur, c'est à dire un programme fait sur VB6 ou VB express édition 2008 ? Cela va il changer quelque chose ou la lenteur de l'execution vient du fait que les fichier Excel sont trop gros ?
Dans un de mes fichiers peux se trouver 30 onglets avec ds tableau de 5000 lignes, lié entre eux par des pointeurs. ainsi que des calculs par formule. Cela peut il expliquer la lenteur de VBA à manipuler ses fichiers ?
Je n'attend pas de "solutions" miracle mais c'est plus une discutions sur les possibilité de remédier au problème de lenteur par l'ulilisation d'auter chose que VBA et surtout d'identifier les causes d'un ralentissement d'execution d'un programme.
Merci par avance pour votre aide.
Cordialement
Vorens