Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Aide pour optimiser une macro import de données

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

EliotteAlderson

XLDnaute Nouveau
Bonjour,

Je jette une bouteille à la mer...

J'ai écrit une macro VBA-E (fonctionnelle).
Pour autant je me pose la question sur son optimisation.

La macro réalise l'import de data issues de différents classeurs Excel. (fermés les classeurs)

Le temps d'import pour 1 fichier oscille entre 33 secondes et 58 secondes (voir dans ses mauvais jours à 1min)
Si on multiplie ce temps par (x) fichiers, ah bah ça peut monter très vite et le temps paraît très longgggg pour l'utilisateur malgré tout le soin apporté :-( (Exemple : 15 fichiers = 22 minutes chez l'utilisateur)

Je ne parviens pas à trouver une solution adéquate (si ce n'est passer par des Array peut-être ou du xml)

Ci-dessous le code commenté, si une bonne âme veut bien venir à ma rescousse je ne la remercierai jamais de trop.


Code concerné : (283 lignes)
Ci-joint Macro Import + Macro ScanFolder (Fonction liée)

*Si besoin j'ai la vue logique de tout ça et les autres modules appelés
 

Pièces jointes

Dernière édition:
Re

Personnellement, pour compter les fichiers, je passerai par Powershell
Get-ChildItem -Recurse -File -Include *.xlsx, *.xlsm| Measure-Object | %{$_.Count}

Ensuite on peut interfacer VBA et powershell

Tu sembles à l'aise avec VBA, alors je te laisse investiguer plus avant 😉
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…