Problème de logique pour performance

Le
ocean
Bonjour,

Grosse galère sur un code, merci de m'aider en logique car cela fait
10 fois que je le refais :

Le but : Afficher un flux en le complétant et en formatant/colariant
des données. La fréquence doit être d'environ 15s.

les données :
1 fichier de flux en format texte avec un code (environ 150 lignes)
1 fichier de données avec la même clé mais plus de lignes (500)

Traitement en vba :
Le fichier flux est pilote, il est chargé dans une feuille avec
activesheet.querytables.add
Sur chaque ligne, je rajoute des infos(20) venant du fichier des
données selon le code des lignes présentes par index(equiv)
exemple :
Pilote (15Ko):
Clés-data
AAA-111
CCC-895

Données (30Ko) :
Clés-data
AAA-234
BBB-123
CCC-789
DDD-456
XXX-120

Résultat :
AAA-111-234
CCC-895-789

Cela fonctionne mais je doute que 150x20=3000 index(equiv) soit la
meilleure solution.
Avec de MFC que je vais enlever le tableau fait 6Mo et rame.

J'hésite entre :
- Assembler le pilote et les données dans un fichier texte qui sera
chargé.
- Charger le fichier pilote et faire des copies de lignes sur la clé.

Ensuite resteront les tests de formatage pour mettre en évidence
certaines situations.

Merci par avance de vos avis et conseils sur la meilleure logique en
fonction des forces et faiblesses d'excel.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
ocean
Le #5444581
Solution actuelle plus que satisfaisante :

1 - passer par des fichier CSV qui sont repris par textconvert
2 - passer ses fichiers en tableaux 2 dimensions

=> rapidité multipliée par 30.

Je suis admiratif devant la puissance des tableaux - MERCI M.
BOISGONTIER - super site, clair !
Publicité
Poster une réponse
Anonyme