Microsoft 365 Effectué une recherche dans plusieurs fichiers

largo41270

XLDnaute Nouveau
Bonjour a tous

J’ai besoin de votre aide

Je dois effectue une recherche dans plusieurs fichiers excel (environ 20 fichiers) comportant 15 colonnes.

Imaginons que dans tous les fichiers source que la colonne M soit les n° de palettes et en R les n° de pièce

Je voudrais pouvoir effectuer la recherche soit par une partie du n° de palette ou du n° de la pièce et Afficher la ligne complète du fichier dans le cadre résultat et si je clic sur le résultat ca ouvre le fichier

En bas de la feuille j’ai mis des modèles de N° de pièce on constate qu’il y a des parties identique

Pour éviter que ça ram de trop dans le fichier j’ai fait une liste des dossiers ou je dois chercher

Et cellule G4 j’indique dans quel dossier chercher

Je reste a votre disposition et vous remercie d’avance
 

Pièces jointes

  • Classeur2.xlsm
    15 KB · Affichages: 8

job75

XLDnaute Barbatruc
Bonjour largo41270, le forum,

Pour colorer les cellules dans la feuille de restitution il suffit d'ajouter :
VB:
If plage(i, dercol) <> "" Then .Cells(lig, j + 2).Interior.ColorIndex = 6 'jaune
A+
 

Pièces jointes

  • recherche.zip
    219.6 KB · Affichages: 2

largo41270

XLDnaute Nouveau
bonjour job75,
j'ai un petit problème avec le code
quand ca effectue une recherche dans la colonne "s/n" ca ne donne pas dans quelle palette elle ce trouve
et pareille quand rentre une ref Pallet no ca ne nous donne pas les ref S/N qui sont associé

merci d'avance
 

Pièces jointes

  • recherche11.zip
    384.9 KB · Affichages: 0

job75

XLDnaute Barbatruc
Bonjour largo41270,
quand ca effectue une recherche dans la colonne "s/n" ca ne donne pas dans quelle palette elle ce trouve
La macro du post #31 restitue ce qui est recherché.

Si vous voulez voir toutes les valeurs de la ligne cliquez sur le lien en colonne A, il est fait pour ça.

Maintenant si vous voulez que les 2 colonnes S/N et Pallet No. soient renseignées utilisez :
VB:
            For j = 0 To 1
                If plage(i, col(j)) <> "" Then
                    If plage(i, col(j)).Text Like cible Then
                        .Hyperlinks.Add .Cells(lig, 1), sf & f.Name, TextToDisplay:=f.Name 'lien hypertecte
                        .Cells(lig, 2) = plage(i, col(0))
                        .Cells(lig, 3) = plage(i, col(1))
                        If plage(i, dercol) <> "" Then .Cells(lig, 2).Resize(, 2).Interior.ColorIndex = 6 'jaune
                        Exit For
                    End If
                End If
            Next j
A+
 

Pièces jointes

  • recherche.zip
    219.7 KB · Affichages: 2

largo41270

XLDnaute Nouveau
bonjour job75 et merci

est-ce que c'est possible si on fait une recherche avec cette "K012203110010" dans le dossier "doss1"
il trouves 36 résultats, que sur 10 des résultats je passe les cellules en jaune dans "S/N" et "Pallet no." et que je les attributs au client toto dans la colonne "affaire/client" j'ai un bouton pour enregistrer les modifications dans les fichiers de la colonne "A"
encore merci pour ton boulot
 

Pièces jointes

  • recherche.zip
    222.6 KB · Affichages: 0

Discussions similaires

Réponses
6
Affichages
391

Statistiques des forums

Discussions
312 715
Messages
2 091 304
Membres
104 849
dernier inscrit
antoine59880