Recherchev sur X fichiers

Résolu
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   -  
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   -

Bonjour,

Depuis un fichier, comment effectuer une recherchev sur tous les fichiers d'un autre répertoire ?

Répertoire C:\SOURCE\

&

Répertoire C:\fichiers\

rechechev =

valeur cherchée colonne A Fichier1

table_matrice colonne J à colonne BA (sur tous les fichiers)

N° index col = 43

Mon problème est le suivant dans le répertoire, il peut y avoir 10 comme 100 fichiers.

Comment faire pour effectuer une recherchev, sur tous les fichiers ? Qu'importe le nombre de fichiers à interroger ?

Merci d'avance !

Bien cordialement,


Windows / Firefox 102.0

A voir également:

40 réponses

cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 

Bonjour,

Est-ce que ta boîte est toujours en Office2010?

Si vous avez migré en 2016, on pourrait également utilisé Power Query....

Dans l'affirmative, est-ce que tous les fichiers compris dans le répertoire de recherche ont la même structure?

Sinon, on peut quand même tester avec ton PC Perso (365, il me semble...) - Il suffit pour cela que tu joignes 2 fichiers anonymisés de recherche, et ton fichier anonymisé également à partir duquel tu souhaites récupérer tes données...

@ te relire


1
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21
 

Bonjour, 

2016 mais sans power Query. J'ai power pivot si jamais ça peut aider....

Oui tous les fichiers ont la même structure.

La solution doit être sur 2016 dans le milieu pro. 

J'ai bien, perso 365.

Cdlt

0
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 

Ok,

Finalement, j'évite les noms d'en-têtes, je ne travaille que sur les numéros de colonne...

Dans le Zip joint, 3 fichiers :
- Le premier "PQ_Pygos", effectue la récupération des données (à mettre dans un répertoire quelconque, différent du répertoire contenant les fichiers à scanner)

- Les 2 autres, des fichiers bidons, avec quelques données (à enregistrer dans un même répertoire)

Pour commencer, il faut configurer le niveau de confidentialité (qui ne sert à rien), et à faire une bonne fois pour toute (j'ai mis la procédure dans le fichier PQ)

Dans l'onglet "Paramètres", tu as donc cette procédure, mais aussi la cellule C2 à renseigner :
Mettre dans cette cellule le chemin du répertoire contenant tous les fichiers à scanner

Une fois mis à jour ce chemin, tu copies/colles tes données de ton onglet (de A à AY). J'ai nommé cette plage "T_Data", qui couvre donc de A1:AYxxxx)

Il n'y a rien dans les colonnes AZ ni BA, ces colonnes sont rajoutées par la requête (j'ai également ajouté le nom du fichier où on a trouvé les correspondances...)

Si tu ne t'en sors pas, on va y aller pas-à-pas...

https://www.cjoint.com/c/MFuktYNtBBC

Bon courage


1
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21
 

.../

Merci ! Je découvre Power Query .....

Je rencontre des problèmes avec T_Final !

En actualisant, je vois le nom de tous les fichiers présent dans le répertoire, défiler et puis erreur "Téléchargement non effectué."....

Expression.Error : Désolé... Nous n'avons pas trouvé la colonne « Name » de la table.
Détails :     Name

0
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 

Re-,

Je m'étonne des "cellules" contenant "null" dans la première ligne...

Tu devrais normalement avoir les en-têtes des colonnes...

Je te propose de continuer demain, dans ce dépannage "hot-line"???

Je pense que le souci vient d'un peu plus haut

Bonne soirée


1
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 

Nickel,

Pour commencer un peu avec PQ, tu peux déjà regarder de ce côté pour les bases, par ici ou ici pour appréhender le code M.

Tu n'as pas donné le résultat????

Tu as réussi à tout obtenir? En combien de temps approximativement?


1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 

bonjour,

il faut s'arreter à la première valeur trouvée?

0
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21
 

Bonjour,

Oui .

Merci !

0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention  
 

Je pense que le mieux est de faire cela via un code VBA.

  • Quand faut-il faire la recherche?
  • Quelle valeur faut-il chercher?
  • Où faut-il la chercher?
  • Que faut-il faire quand la valeur est trouvée?
1
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21 > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
  • Il faut chercher toutes les valeurs de la colonne A du fichier source
  • Recherche dans tous les fichiers d'un répertoire en colonne J la valeur colonne A
  • renvoyer la valeur de la colonne BA
  • Le résultat en colonne BC du fichier source
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention  
 

Quels sont les quantités, en  gros? 

- nombre de valeurs à chercher

- nombre de valeurs dans lesquelles chercher

Est-il réaliste de créer, par VBA, une feuille contenant toutes les valeurs en J & BA?

0
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21 > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 

.../

15 000 ~en colonne A

Imaginons que j'ai "124577" en A8, je recherche dans tous les fichiers cette référence en colonne J et si je trouve je récupère l'info de la colonne BA, que j'indique dans le fichier source en ligne 8 colonne BD.

0
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 

Re-,

Si tu as 2016, tu as Power Query.... C'est en natif avec la version


0
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21
 

Non c'est désactivé en entreprise....

0
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361 > PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention  
 

Bonjour,

Va vraiment falloir que ta boîte m'explique....

Elle autorise les macros, et interdit Power Query?????

Le stagiaire RSI n'a pas confondu?

Que se passe-t-il sur tu appuies sur les touches Alt + F12?

Le volume de données à traiter que tu indiques supra n'est pas un obstacle pour PQ...

PS, je précise que je n'ai aucune action :)

0
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21 > cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention  
 

.../

ALT +F12 rien ne se passe....

0
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 

Ok,

Vraiment désolé pour toi, reste à espérer que yg_be te trouvera une solution (mais j'en doute pas trop...)

Bonne journée


0
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21
 

Merci d'avoir essayé ! Si tu as un exemple avec Power Query et que tu as le temps, je veux bien voir sur excel 365 à la maison ....

Oups, désolé je viens de m'apercevoir que dans données > autres sources > provenance Microsoft Query, je peux sélectionner des fichiers ...... Cela veut il dire que je peux me servir de PoWer Query (pas de connaissance à ce sujet, mais....)

Bonne journée !

0
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 

Re-,

Déjà, bonne nouvelle..

Par contre, je pense que si tu fournissais (comme demandé un peu plus tôt) des fichiers exemples, anonymisés, mais avec la structure exacte de tes fichiers réels - nb d'onglets, les noms des fichiers à "scanner" ont-ils des bases communes?, bref, tout ce qui pourrait être utile...

Je t'expliquerai alors ce qu'il te faudra faire, pour adapter à ton environnement.

@ te relire


0
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21
 

.../

Fichiers Cible

Ce sont des tableaux avec 53 colonnes de A à BA (les titres se trouvent en ligne2)

L'élément en commun se trouve :

Fichier source en colonne A

Fichiers Cible en colonne J

Dans les fichiers Cible,il y a en colonne AZ une date et en colonne BA un motif.

Je souhaite rapatrier la date et le motif pour tous les éléments trouvés dans les fichiers Cible vers le fichier Source (Colonne AZ pour la date et BA pour le Motif), comme dans les fichiers Cible).

Il n'existe pas de doublon....

0
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21
 

Exemple de fichier Source

https://www.cjoint.com/c/MFuhBYVyjNC

Exemple de fichier Cible

https://www.cjoint.com/c/MFuhDbSyMxC

0
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 

Re-,

Dans les fichiers "Source", les titres ont tous le même nom?

Quels sont les en-têtes des colonnes J, AZ et BA?


0
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21
 

.../

Oui, les fichiers source ont tous le même nom

En J = Elément recherché

En AZ = Date contact

En BA = Motif Contact

Le fichier ou je dois récupérer les infos :

En A = Elément recherché

En AZ = Date contact

En BA = Motif Contact

0
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361 > PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention  
 

Re-,

Pour être bien sûr...

La casse est essentielle, donc "Date contact" (D majuscule, c minuscule), et "Motif Contact" (les deux en nom propre)

0
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21 > cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention  
 

Oui , et toujours en colonne AZ & BA

0
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 

Re-,

On va privilégier les "Réponses" aux "Commentaires", je trouve la lecture du fil bien plus aisée...

Lorsque tu es dans l'éditeur PQ, à gauche, les requêtes, et à droite, les étapes

Tu cliques sur la requête "T_Final", puis sur l'étape "SupprCol2"

Quel est le mot dans la 1ère ligne de la 3ème colonne?

Tu retiens ce nom, puis, 2 étapes plus bas, tu remplaces le "Name" par ce mot :

= Table.RenameColumns(PromoHead,{{"Name", "Fichier"}})

A cette étape, je renommais la colonne "Name" par "Fichier"

Essaie, puis on continue...


0
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21
 

2 étapes plus bas c'est rename ?

0
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 

Heu, c'est bizarre, il n'y a aucune données?

Dans la requête "T_Recup", tu as des données, à chaque étape?


0
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21
 

Dans T_RECUP, j'ai en colonne1 Name avec le nom des fichiers

En colonne 11 = null

En colonne 53 = null

En colonne 54 = null

0
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 

Re-,

T_Recup, étape "Selections", tu as quoi?

Regarde le fichier ppt joint, j'y ai mis les étapes de la requête "T_Recup"

Tu me dis à quelle étape (hormis évidement les noms de fichiers), on n'a plus les mêmes "données"

https://www.cjoint.com/c/MFunxArEb8C


0
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21
 

../

T_Recup, étape "Selections", tu as quoi?

Une colonne Name et une colonne Data

Name = la liste des fichiers

Data = Table

0
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21 > PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention  
 

..../

La colonne 11, correspond pas à la colonne J ou je me trompe...

0
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361 > PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention  
 

Re-,

Est-ce que tu peux utiliser "Répondre", et non "Commenter"?

La colonne 1 est la liste des fichiers (Name), et comme J est la 10ème lettre, donc colonne10 + 1

Ce qui m'intéresse,c'est de savoir si tu obtiens bien toutes les données de tous tes classeurs..

Ensuite, on continue

0
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21
 

T_Recup étape Selections :

= Table.SelectRows(Expand1, each ([Kind] <> "DefinedName")) [[Name],[Data]]

0
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 

Ok, donc on va descendre

Regarde mon fichier..

A l'étape suivante, tu as des données?

PS, il me vient un doute...

Combien d'onglets dans tes fichiers à scanner?

Est-ce que l'onglet contenant les données est bien le premier onglet?


0
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 

Re-,

Je ne sais pas si je parle français...

Je t'ai demandé d'utiliser "Répondre", et non "Commenter"...

Bref...

As-tu regardé mon fichier powerpoint?

Est-ce que tu as des données à l'étape "Expand", de la requête "T_Recup"? (regarde bien vers la droite, également)


0
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21
 

Je viens de vérifier l'ensemble des requêtes, après lecture du powerpoint et je viens de relancer.

Etape "Expand" = null

La différence par rapport au powerpoint, C'est à l'étape SupprCol, j'ai null

Combien d'onglets dans tes fichiers à scanner?

3

Est-ce que l'onglet contenant les données est bien le premier onglet?

Oui après rectification ! Il est nommé Feuil1 désormais..

Je désespère............

0
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21
 

.../

Dans T_RECUP SupprCol, j'obtiens enfin des résultats (certaines lignes sont toujours = null), mais d'autres renvoient des infos........

Mais toujours plantage T_Final, cette fois-ci dans la colonne "Date contact" .

Je vérifie les fichiers pour avancer.....

0
cousinhub29 Messages postés 1074 Date d'inscription   Statut Membre Dernière intervention   361
 

Re-,

La position de l'onglet est bien en première? (le nom importe peu, c'est la position)

Est-ce que tu as besoin des autres onglets?

Sinon, quelle colonne est forcément remplie?

Admettons la colonne J.

Dans la requête "T_Recup", tu cliques sur l'étape "DemoteHead", tu sélectionnes la colonne 11, puis tu cliques sur le Filtre, et tu décoches "null"

Est-ce que ça s'améliore? (n'aies aucune crainte, on n'intervient pas du tout sur les fichiers réels)


0
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21
 

.../

J'avance ! j'ai testé avec un seul fichier,

Dans T_RECUP, je retrouve toutes les infos.

J'ai décoché "null"

Dans T_Final, lorsque je réactualise tout, un message apparait [Epression.Error] Désolé ...Nous n'avons pas trouvé la colonne "Date contact" de la table.

T_FINAL = !Téléchargement non effectué

J'ai les résultats sur T_RECUP, mais du coup dans mon tableau EXCEL je ne récupère rien, pour l'instant.....

0
PYGOS69 Messages postés 452 Date d'inscription   Statut Membre Dernière intervention   21
 

.../

Est-ce que tu as besoin des autres onglets ?

Non (j'ai laissé que la Feuil1)

Sinon, quelle colonne est forcément remplie ?

Colonne J

0