Extraire données de plusieurs fichiers .ivt

Bonjour à tous,

Je travaille actuellement sur de nombreux fichiers .ivt (plusieurs centaines, et d’ici quelques semaines plusieurs milliers) desquelles je dois extraire certaines données et les classer dans un classeur Excel.

Je travaille sur deux «types » de fichiers :

  • Les premiers sont nommés XXXX_01, XXXX_02, etc.
  • Les seconds YYYY_01, YYYY_02, etc.
Ils contiennent exactement le même type de données, chaque donnée que je souhaite extraire se trouve toujours à la même position quel que soit le fichier.

Je souhaiterai écrire une macro qui ouvre chacun des fichiers XXXX, copie les valeurs que je souhaite et les colle dans ma feuille Excel en ligne (Ex : ligne 1 entête, ligne 2 valeurs du fichier XXXX_01, ligne 3, valeurs du fichier XXXX_02, etc.) puis referme les fichiers .ivt et dans un second temps fait la même chose avec les fichiers YYYY.

Je vous joins mon fichier Excel final.

Je suis novice en VBA, je consulte votre forum depuis hier et ai commencé à transposer quelques solutions à mon problème, sans grand succès jusqu’à présent : de nombreuses lignes de code restent pour moi encore très obscures… La macro que j’ai commencée se trouve dans le document Excel joint, malheureusement elle est incomplète et ne fonctionne pas.

Pourriez-vous m’aider à trouver ce qui ne va pas dans le début de ma macro ?

Je pense qu’il faudrait une boucle, peut-être avec while, pour ouvrir les fichiers .ivt, sauriez-vous comment l’incrémenter ?

Sauriez-vous enfin comment copier les données souhaitées du fichier .ivt, les coller au bon endroit et surtout à la suite les unes des autres (une ligne correspondant à un fichier cf. document Excel) ? Là encore, je suppose qu’il faudrait effectuer une boucle ?

Je vous remercie par avance de votre aide et espère avoir été assez claire.

Je vous souhaite une bonne soirée,

Kess.

14results.xlsm (16.71 Ko)

Bonsoir

Si tu veux un peu plus d'aide, il faudrait 2-3 (si taille pas trop importante) de chaque type de fichier

Zippe les au besoin

Ainsi que tu indiques exactement les données que tu veux récupérer, car dans ton fichier on voit B12, B33 etc ...

Ce sont toujours les mêmes ?

Vont elles toujours au mêmes endroits ?

Les fichiers sont ils dans le même répertoire que le fichier principal ?

Dans des répertoires différents ?

Kess a écrit :

et dans un second temps fait la même chose avec les fichiers YYYY.

Quel est la relation entre le fichier XXXX_01 et le fichier YYYY_01 ?

Ils sont sur la même ligne pourquoi ?

C'est fait exprès ou alors c'est un hasard ?

Bonsoir,

Ah, Banzai, tu es aussi sur le sujet ...

Je suis en train de traiter ce petit cas.

De mon côté, je pars sur du paramétrage dans un onglet dédié.

A plus pour d'autres nouvelles

Bouben

Bonsoir

@bouben

Ce n'est pas parce que je suis sur un sujet que cela empêche quelqu'un d'autre d'y travailler

Moi je ne vois que l'intérêt du demandeur

C'est d'avoir au moins une solution et alors si il y en a plusieurs tant mieux pour lui

Continue et proposes ta solution

Amicalement

PS: Même pas sur que je propose une solution mais au moins j'avais des questions et j'espère avoir des réponses

Bonsoir,

Entièrement d'accord avec toi. La priorité est de répondre au besoin.

Toutefois, sur les "gros" sujets où on passe 3h, voire beaucoup plus, c'est parfois un peu dommage de proposer 2 solutions quasi similaires, alors qu'en additionnant les forces de frappes, on pourrait être plus efficaces.

Nouveau sur le forum depuis un mois, j'avoue que cela n'arrive pas souvent de travailler en double. Donc pas souci !

Bouben

Bonsoir,

Ci-joint une proposition à tester.

Seuls quelques tests faits avec des fichiers fictifs.

Bonne soirée

Bouben

Bonsoir,

Merci pour votre réponse, je vais regarder votre solution.

Pour répondre à vos questions, je ne peux pas joindre les fichiers .ivt qui sont confidentiels. Je suis consciente que cela ne facilite pas la chose.

Les données que je souhaite extraire sont toujours au même endroit dans le fichier .ivt.

Les fichiers XXXX et YYYY correspondent simplement à deux échantillons différents.

Je peux mettre les fichiers dans le même répertoire ainsi que dans le même répertoire que le classeur Excel si cela est nécessaire.

Bonne soirée, je vous tiens au courant après avoir testé votre solution.

Bonsoir,

Je vous remercie tout d'abord du travail fourni, je ne pensais pas que le code nécessaire serait si long et - à mes yeux - si complexe.

Après avoir renseigné les éléments nécessaire, j'ai lancé la macro. Une boîte d'erreur est apparue indiquant "Erreur d'exécution "13" : incompatibilité de type". Excel désigne la cellule qui contient l'erreur mais je ne vois pas comment la corriger.

Je vous remercie par avance de votre aide et souhaite une bonne soirée,

Kess.

P.S. Est-il possible de modifier le code pour extraire une autre donnée du fichier .ivt, la cellule B6, pour l'insérer dans la dernière colonne des deux "tableaux de résultats"?

Bonsoir,

Confus pour l'erreur ... A analyser.

Pouvez-vous me renvoyer le fichier tel que vous l'avez complété ?

Code complexe effectivement, pour pouvoir être paramétrable au maximum.

Pour ajouter une nouvelle colonne, normalement, pas de code vba à modifier, seul le paramétrage :

Pour ajouter l'information ZZZ :

  • onglet Résultat : cellule AF1 : ZZZ (libellé), cellule AG1 : ZZZ (libellé, j'imagine que c'est pour le deuxième fichier)
  • onglet Parametrage : ajout de 2 lignes
* ligne 34 : ZZZ / AF / Fichier xxxx / B6 / 1 / automatique / détail zzzzzzzz

* ligne 35 : ZZZ / AG / Fichier yyyy / B6 / 1 / automatique / détail zzzzzzzz

Bouben

Bonsoir,

Ci-joint une nouvelle version qui devrait résoudre le problème de type incompatible.

J'en ai profité pour paramétrer une nouvelle donnée, comme souhaitée, affichée en colonne "P" (il y avait une colonne vide) et "AF".

Cette donnée récupère l'information en B6 dans les 2 fichiers.

Sur ce, bonne nuit !

Bouben

Bonjour,

Merci beaucoup, le programme fonctionne parfaitement !

Je vais essayer de comprendre le code que vous avez écris afin de pouvoir par la suite écrire de tels codes par moi même. Mais bon, je vais commencer par quelque chose de plus accessible je pense^^

Bonne fin de week-end et encore une fois merci !

Kess.

Rechercher des sujets similaires à "extraire donnees fichiers ivt"