Récupérer données d'un fichier, vba ou recherchev ?

Barazouti

XLDnaute Nouveau
Re-bonjour,

Deuxième topic pour moi aujourd'hui. L'envie d'apprendre ..

Je vais expliquer ma situation.

J'ai créé un fichier standardisé auquel je rempli exactement de la même façon.
Dans le bordereau au dessus des tableaux j'y intègre un nombre (toujours au même emplacement) suivant le moyen adapté.

Je dois faire un tableau récapitulatif de tous mes fichiers créer sur le même standard de cette ligne.
c'est à dire que j'ai besoin de récupérer les informations de la ligne 11 (nombre uniquement) associés au moyen de la ligne 10.

A part ouvrir les 150 fichiers un par un, je souhaiterais savoir s'il existait une méthode "intelligente" permettant de récupérer tout ça.

je vous mets les 2 fichiers.


Merci la compagnie
 

Pièces jointes

  • Fichier récap.xlsx
    9.7 KB · Affichages: 14
  • Fichier standard.xlsm
    729.3 KB · Affichages: 13

sousou

XLDnaute Barbatruc
Bonsoir
Il manque des informations dans ton problème,
comment ranges-tu les informations prélevés dans le fichier standard dans le fichier récap?
A partir de quelles information du choisis la ligne du fichier récap?
dans le fichier joint, sans informations, je considère que tous les fichiers standard sont dans le même dossier que l'appli
et je range les infos sur n'importe quelle ligne ne sachant pas comment je la choisie.
je suppose que se sera soit le nom du fichier, soit le nom de l'atelier et de 'équipement, mais un fichier complet sera nécessaire
 

Barazouti

XLDnaute Nouveau
Bonsoir
Il manque des informations dans ton problème,
comment ranges-tu les informations prélevés dans le fichier standard dans le fichier récap?
A partir de quelles information du choisis la ligne du fichier récap?
dans le fichier joint, sans informations, je considère que tous les fichiers standard sont dans le même dossier que l'appli
et je range les infos sur n'importe quelle ligne ne sachant pas comment je la choisie.
je suppose que se sera soit le nom du fichier, soit le nom de l'atelier et de 'équipement, mais un fichier complet sera nécessaire


Bonjour sousou,
Je range les informations sous forme de ligne. j'ai essayé de te mettre un exemple dans le fichier.
A partir de quelles information du choisis la ligne du fichier récap?
la est toute la difficulté, actuellement je rempli les lignes en ouvrant mes fichiers standardisés, et en recopiant, reportant le nombre associé à l'équipement besoin.
Car j'ai créer comme tu vois une liste pour aller plus vite, et dans mon tableau recap, j'aimerais que il trouve tout seul le nombre approprié au bon équipement. Donc je souhaiterais que le fichier recap trouve le bon équipement
de la ligne 10 (puisque d'un fichier standard à un autre les équipement sont différents et pas rangé selon le même ordre) (fichier standard) et qu'il recopie le nombre besoin de la ligne 11 associé à l'équipement de la ligne 10 (fichier standard)

Je ne sais pas si c'est plus clair .. mais c'est difficile de faire simple par écrit.

je considère que tous les fichiers standard sont dans le même dossier que l'appli ?
Oui les fichiers se trouve au même endroit.
 

Pièces jointes

  • Fichier récap.xlsx
    11.2 KB · Affichages: 11
  • Fichier standard.xlsm
    715.7 KB · Affichages: 11

sousou

XLDnaute Barbatruc
Re
Je pense avoir compris, mais:
Dans le fichier récap les colonnes 1 et 2 (atelier et équipement ) sont-elle préremplis avec des nom attendus, ou faut-il les remplir à partir des données des fichiers standards (n7 et n8) , c'est à dire qu'au lancement de la macro, on refait tout le tableau pour les 150 fichiers?
 

Barazouti

XLDnaute Nouveau
Très pertinent ta remarque.
Atelier et équipement sont actuellement préremplis, car je pilote mon projet avec des listes qui me permettent de rester "focus".
Donc je te dirais non.

Mais si c'est possible de récupérer ces informations se serait un plus effectivement pour les prochaines, il faudrait uniquement remplir l'emplacement des fichiers, c'est ça ?
 

sousou

XLDnaute Barbatruc
Re
Voici une version à tester. macro deb()
Je me suis posé la question et si deux fichiers même atelier et même équipement mais consigne différente?
J'ai donc conçu quelque chose qui permette de gérer ce cas.
Pour cela j'ai légèrement modifié le fichier récap, dans la colonne équipement, existera une concaténation du couple atelier équipement ce qui devrait fonctionner dans tous les cas.
J'ai aussi ajouté une sécurité, (si le nom de la consigne n'existe pas dans le fichier récap alors erreur et arrêt de la macro, à voir si cela peut arriver
A suivre
 

Pièces jointes

  • Fichier récap.xlsm
    21.3 KB · Affichages: 9

Barazouti

XLDnaute Nouveau
Ecoute, je m'attendais pas à ce quelqu'un fasse le travail pour moi, mais aujourd'hui c'est mon anniversaire .. donc je te remercie vraiment beaucoup.

Je jette un œil sur le fichier ce soir et je te fais un retour dès que possible.
Je rentre ou les chemins de mes fichiers standard pour que la macro les prends en compte ?

Si ça ne t'embête pas, pourras-tu m'expliquer par la suite (en mp) comment tu t'y est pris ?

Merci pour ton implication en tout cas.
 

sousou

XLDnaute Barbatruc
Si comme tu l'as dit précédemment ils sont situés dans le même dossier, alors tu n'as rien à entrer sinon, tu pourras supprimer la ligne chemin=...
et décalarer une variable en début de procédure
Public const chemin=.....
J'ai mis pas mal d'explication dans le fichier, mais je reste dispo
 

Barazouti

XLDnaute Nouveau
Bonjour à tous, et bonjour sousou,

Oui ils sont situés dans le même dossier.
J'ai donc placé le fichier recap dans ce même dossier.
Tout à l'air de fonctionner parfaitement.

Juste une petite exception, j'ai 4-5 fichiers qui n'ont pas qu'une seule feuille (4-5) qui ne sont pas intitulé base..
Et du coup la macro s'arrete en pointant

Call cherche(f.Sheets("base"))

Ma question est donc : Comment faut il modifier cette ligne pour qu'il puisse prendre en compte plusieurs onglets avec des noms différents de "base" ?

Merci de votre aide.
 
Dernière édition:

sousou

XLDnaute Barbatruc
Bonjour
Si elles n'ont pas le même nombre de feuille , cela n'a pas d'importance! Par contre si la feuille contenant les données ne s'appelle pas base alors évidement çà plante .
Il faut trouver un point commun à tous les fichiers, par exemple c'est toujours la feuille 1 du fichier alors remplacer "base" par un,
ou tester le nom du fichier et en fonction de son nom désigner la feuille en question
Comment sont les 4 ou 5 fichiers différents?
 

Barazouti

XLDnaute Nouveau
Les 4-5 fichiers sont exactement pareil.
Juste qu'il y a une feuille pour condamner les arrivées, une autre pour les sorties etc .. mais toujours sur le même format que le fichier standard.

L'ennui c'est que je ne peux pas donner le même noms au feuilles ..
 

sousou

XLDnaute Barbatruc
alors deuxième solution!
si le nom du fichier est un des fichiers, alors le nom de la feuille est ? ect
Tu peux gérer cela avec une array, mais il me faut plus d'infos sur ces fichiers la liste des ces fichiers est(elle exaustive?
Quel sont leur nom, quel est le nom des feuilles , ou sont'il reconnaissable par un point commun exemple (se sont les seuls à avoir plusieurs pages)
 

Barazouti

XLDnaute Nouveau
si le nom du fichier est un des fichiers, alors le nom de la feuille est ?

Tu peux gérer cela avec une array, mais il me faut plus d'infos sur ces fichiers la liste des ces fichiers est-elle exhaustive?
Oui la liste de ces fichiers est exhaustive, puisque à l'heure actuelle j'en ai 4-5 mais il se peut que d'ici 2 mois j'en ai des dizaines voire plus.

Quel sont leur nom, quel est le nom des feuilles , ou sont'il reconnaissable par un point commun exemple (se sont les seuls à avoir plusieurs pages)

Comme je standardise, je standardise jusqu'au bout c'est à dire que mes fichiers son nommés comme suit : "Nom de l'atelier_CHECKLIST_Nom de l'Equipement"

En revanche le nom des feuilles bis (au delà de "base") d'un fichier à un autre varie. Pas un seul nom de feuille n'est le même.
Oui se sont les seuls à avoir plusieurs pages.
Egalement, le point commun de tous ses fichiers se sont le nom ""Nom de l'atelier_CHECKLIST_Nom de l'Equipement" uniquement la partie en gras

Quelles sont les solutions ?
- Je peux modifier le nom des feuilles bis de la même façon ; comme "Additif 1" "Additif 2" etc ..
 

sousou

XLDnaute Barbatruc
Pas tout compris!
Essaie de m'envoyer un fichier
Je repart du fichier d'origine Standard Il y a dedans une feuille nommée base sur laquelle on applique le traitement
Dans tes autres fichiers, y a t-il plusieurs feuilles ou une seule sur laquelle il faut appliquer le traitement?
Tu me parle de feuilles (bis)? je ne vois pas tous cela!
 

Barazouti

XLDnaute Nouveau
Bonjour,
Désole du retard.

J'ai extrait les feuilles des onglets en simple fichier pour que la macro 'recap' les prennent en compte.
Solution BIS

Je t'envoie quand même le fichier avec les différents onglets (feuilles bis) pour que tu puisses visualiser.

Feuille bis pour moi ce sont les feuilles qui viennent s'ajouter en plus de "base"/
 

Pièces jointes

  • Fichier standard.xlsm
    909.5 KB · Affichages: 6

Discussions similaires

Statistiques des forums

Discussions
312 104
Messages
2 085 347
Membres
102 868
dernier inscrit
JJV