Extraire données fichiers .txt très volumineux vers .xls

Bonjour à tous,

J’ai à disposition : 30 fichiers .txt (1 fichier / jour) contenant des relevés de paramètres effectués toutes les 10 secondes, soient 8646 lignes dont 7 lignes d’entête, et ce pour 324 paramètres soient 326 colonnes (dont une colonne de date et une colonne inutile)

(Je vous laisse faire le calcul du volume d’information à traiter)

Je suis en train de rédiger une macro pour mettre bout à bout ces données pour un mois complet (30 fichiers de 24Mo chacun), mais seulement pour un ou deux paramètres choisis (ce serait trop lourd de les mettre tous bout à bout même si ce serait génial!)

A partir de tout ce que j’ai pu lire sur les forums, ma macro fonctionne (youhou), mais j’ai encore quelques problèmes majeurs :

  • Les valeurs qui apparaissent dans mon fichier final ne sont pas au format chiffre, mais au format texte
  • Je ne sais pas comment réécrire mes boucles pour que les 7 lignes d’entête n’apparaissent qu’une seule fois (je sais décaler une boucle, mais pas avec une lecture directe de fichier textes et de recopie des données dans un fichier excel…)
  • Au-delà de 3 ou 4 fichiers à traiter, la macro finit par planter, même si le fichier est bien créé et contient déjà des données (Est-ce trop lourd à gérer ? Est-ce que j’aurais dû diviser le code en plusieurs procédures ?)
  • Ma macro n’est pas plus rapide que si je faisais le travail à la main directement… même si cela permet quand même de faire autre chose en même temps…
  • Mon timer pour estimer le temps d'exécution de ma macro de fonctionne pas (il n'indique pas la bonne durée écoulée... mais vous me direz, ce point là, s'il n'est pas résolu, je m'en remettrai !)

Pourriez-vous s'il vous plait m'aider sur ces différents points ?

(je peux encore améliorer la demande de choix des données, mais pour le moment cela me convient).

Voici mon code :

(désolé si je choque certaines personnes avec des codes trop longs, je suis en période d'apprentissage avec vba !)

(et du coup, bon courage pour la lecture!)

Pour info, dans mon fichier contenant la macro, sur la ligne 5, on retrouve tous les noms de paramètres existants (mes "tags") :

CV12345 TI12378 ....

Merciiiiii !

Fichier :

112macro-concatener.xlsm (37.34 Ko)

Exemple de fichier .txt de données (très allégé en données pour pouvoir être mis sur le forum) :

64arc15-c.zip (5.05 Ko)

(J'espère que vous avez survécu à la lecture de la macro...)

Bonjour,

ça vient d'où quelle application tes fichiers textes. Peux-tu obtenir des fichiers texte propre des .csv ? Pour être exploité c'est mieux

Mes fichiers viennent d'un vieux système de supervision d'usine, et je ne peux les récupérer que sous ce format malheureusement...

Re,

Si possible joins-nous le fichier texte original pas le fichier retraité et surtout évite de mettre 1 km de code ça décourage plutôt de suivre ta demande. Le meilleur moyen de fournir ton code est de joindre le fichier Excel qui comporte le code.

J'ai mis à jour mon poste initial avec les fichiers contenant la macro et un exemple de fichier de données (j'ai du enlever la majeure partie des données pour pouvoir le mettre sur le forum).

Merci de vous intéresser à mon sujet

Bonjour C.

Je me suis pencher sur l'enregistrement des parametres Rh***ne© et ça fonctionne

Le fichier xl est a placer dans le rep des enregistrements

-un bouton lance l'import de la liste des fichiers présent

on efface les cellules pour garder la plage de temps qui nous intéresse

-un bouton lance l'import dans un onglet TMP de toutes les lignes des fichiers sélectionnés (30sec par fichier)

puis la macro copie dans un autre onglet un interval de ligne pour collecter 250 lignes dans TMP

puis un autre onglet renvoie la valeur numérique de chaque cellule de l'onglet précédant (qui était en txt)

Ca y est!

A+

Rechercher des sujets similaires à "extraire donnees fichiers txt tres volumineux xls"