Extraire des lignes a interval fixe de fichiers txt

Bonjour a tous, et merci de m'accueil sur le forum.

J'ai commencé y'a quelques mois les macro et j'en ch**** un peu.

En me formant notamment sur ce forum j'ai réussi a bricoler une macro qui fonctionne.

Et la vous vous dites ; super y'a plus qu'a cliquer sur résolu! mais non, j'ai un temps d'execution treeees long

J'aimerai vos lumières sur la meilleur façon de s'y prendre:

J'ai des fichiers d'enregistrement du système. 325 paramètres enregistrés toutes les 10 sec

J'ai besoin de copier une ligne complete sur 36 pour pouvoir avoir un graph de moins de 256 points sur une journée

Pour l'instant, la macro copie l’intégralité de tous les fichiers txt de 25Mo chacun dans un onglet puis copie une ligne sur x dans un autre , mais cela prends des centaines de secondes (259000 lignes 211sec pour un mois) :

'BOUCLE IMPORT D'UN FICHIER TXT-------------------------------------------
Nb = FreeFile
Set Rg = ThisWorkbook.Worksheets("TMP").Range("A" & depart)
Fichier = ThisWorkbook.Path & "\" & Range("A" & listefichier).Value
Open Fichier For Input As Nb
Do While Not EOF(Nb)
Line Input #Nb, Ligne
C = Split(Ligne, vbTab)
Rg.Offset(k).Resize(, UBound(C) + 1) = C
k = k + 1

Voyez vous mieux a faire avec ce bout de code que je n'ai de tout façon pas compris?

Merci a vous

Fred

bonjour

un exemple avec un TCD et un groupement par 100 (il fait la moyenne des valeurs par blocs de 10 lignes, c'est mieux que de faire une extraction d'une ligne sur 10)

puis un graphique

les TCD sont réputés pouvoir traiter des millions de lignes

essaye sur ton gros fichier brut des données, tu en as pour 30 secondes

si besoin joins un extrait du fichier en question.

34exemple66.xlsx (17.65 Ko)

Bonjour JMD,

Merci pour ta réponse, mais je ne veux pas traiter a la main ces fichiers bruts.

Le macro actuelle importe tout les fichiers bruts présents dans le repertoire du fichier xl

Cela dit, si je savais me servir des TCD, je pourrais essayer de traiter directement l'import des 120000x350 entrées sans les reéchantillonner...

Reste qu'il faut toujours 200 a 300 sec pour exécuter cette macro

En parallèle du dev de ma macro, je devrais essayer d’apprendre a utiliser les TCD

Fred

re

1/

une fois un TCD créé (5 à 10 minutes pour qu'il soit au point et joli) tu ne le retouches plus jamais, sauf clic droit "actualiser".

2/

dans Excel "mettre sous forme de tableau" et les TCD doivent s'apprendre avant de savoir faire une addition

3/

imagine : chaque jour, au clavier et à la souris, tu importes les nouvelles données de la veille dans ton immense fichier "Année2017" sous les lignes existantes. Puis tu ouvres le fichier du TCD et tu l'actualises en 2 clics.


re

1/

une fois un TCD créé (5 à 10 minutes pour qu'il soit au point et joli) tu ne le retouches plus jamais, sauf clic droit "actualiser".

2/

dans Excel "mettre sous forme de tableau" et les TCD doivent s'apprendre avant de savoir faire une addition

3/

imagine : chaque jour, au clavier et à la souris, tu importes les nouvelles données de la veille dans ton immense fichier "Année2017" sous les lignes existantes. Puis tu ouvres le fichier du TCD et tu l'actualises en 2 clics.

Bonjour,

As-tu la possibilité de télécharger Power Query pour Excel 2013 ?

Le traitement de tes fichiers texte serait simplifié, avec un peu d'apprentissage.

Cdlt.

Jean-Eric a écrit :

Bonjour,

As-tu la possibilité de télécharger Power Query pour Excel 2013 ?

Le traitement de tes fichiers texte serait simplifié, avec un peu d'apprentissage.

Cdlt.

Bonjour Jean-Eric,

Non je n'ai meme pas asses de droits pour les MAJ! :p

Sinon le but de ma macro est d’être exploitée sans competence avec xl par n'importe quelle personne qui souhaite visualiser les données

Fred

Rechercher des sujets similaires à "extraire lignes interval fixe fichiers txt"