Recherche avec resultat multiple

Bonjour à tous,

Je cherche depuis une semaine dans tous les forum possible une réponse à mon problème.

Je m'explique: je travail dans un magasin alimentaire, et je voudrais créer un tableau plus facile pour mon chef de cuisine.

Dans la feuille1 colonne A: je voudrais entrer un mot (bœuf par exemple) dans la colonne B je voudrais avoir une liste de toutes les lignes avec le mot bœuf. Et que mon chef de cuisine n'est plus qu'a sélectionner celui qu'il veut dans cette liste. Pour que ensuite le code du produit et l'unité de stockage apparaissent.

J'espère que j'ai étais assez explicite et que quelqu'un pourra me venir en aide.

38classeur1.xlsx (164.32 Ko)

Bonsoir Sam, bonsoir le forum,

Ton énoncé est assez bizarre quand on ouvre ton fichier exemple !... J'ai pas bien compris où tu voulais afficher les données.

Alors voilà ce que je te propose :

• Double-clique dans n'importe quelle cellule de la plage B12:B33 de l'onglet Feuil1

• La boîte de dialogue RECHERCHE s'ouvre

• Au fur et a mesure que tu tapes du texte dans la TextBox1 [Recherche], la ListBox1 s'actualise...

• Quand la liste te convient, double-clique sur l'élément désiré

• Les données sont renvoyées dans le tableau (Je n'ai pas compris pourquoi 3 codes produits dans le tableau ?), l'Userform1 se ferme.

Est-ce que ça convient ?

61sam-v01.xlsm (191.68 Ko)

bonjour

un essai

51ultra-60.xlsx (181.78 Ko)

cordialement

ThauThème a écrit :

Bonsoir Sam, bonsoir le forum,

Ton énoncé est assez bizarre quand on ouvre ton fichier exemple !... J'ai pas bien compris où tu voulais afficher les données.

Alors voilà ce que je te propose :

• Double-clique dans n'importe quelle cellule de la plage B12:B33 de l'onglet Feuil1

• La boîte de dialogue RECHERCHE s'ouvre

• Au fur et a mesure que tu tapes du texte dans la TextBox1 [Recherche], la ListBox1 s'actualise...

• Quand la liste te convient, double-clique sur l'élément désiré

• Les données sont renvoyées dans le tableau (Je n'ai pas compris pourquoi 3 codes produits dans le tableau ?), l'Userform1 se ferme.

Est-ce que ça convient ?

Merci à toi de me répondre aussi vite.

Ce que tu as fais me convient très bien. ca va nous simplifier la vie.

Pour les trois codes produits c'est notre logiciel informatique qui a besoin de ca.

Pourrais-tu m'expliquer comment mettre cette fenêtre de recherche car j'ai d'autre feuilles ou je dois faire pareil. et que j'aime bien savoir pour enrichir mon expérience Excel


tulipe_4 a écrit :

bonjour

un essai

cordialement

Je te remercie de ta réponse aussi. mais le fichier de ThauThème me convient plus. car mon chef de cuisine est un peu anti ordinateur.

donc le fichier que tu m'as fais serais trop complexe a lui expliquer

merci quand même pour avoir pris le temps de me répondre.

Bonsoir le fil, bonsoir le forum,

Franchement, la solution de Tulipe et bien plus simple à transposer que la mienne...

Toutefois, le code qui permet d'ouvrir l'UserForm au double-clic se trouve dans l'éditeur Visual Basic (VBE qui s'ouvre avec le raccourci clavier [Alt]+[F11]) dans le composant de l'onglet "Feuil1" nommé Feuil1(Feuil1). Le voici :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) 'au double-clic dans l'onglet
'si le double-clic a lieu ailleurs que dans la plage B12:B33, sort de la procédure
If Application.Intersect(Target, Range("B12:B33")) Is Nothing Then Exit Sub
Cancel = True 'annule le mode [Édition] lié au double-clic
UserForm1.Show 'ouvre l'UserForm1
End Sub

• Comme tu vois, il ne fonctionne dans cet exemple que sur la plage B12:B33 de cet onglet. Donc si tu veux l'utiliser dans un autre fichier, il te faudra adapter cette plage...

• Il te faudra aussi, bien évidemment, copier l'Userform de ce fichier dans l'autre. VBE permet de faire ça en faisant glisser cet UserForm d'un projet à l'autre ou, autrement dit, d'un fichier à l'autre...

• il faudra encore que les données de l'onglet Feuil2 commencent dans la cellule A1 sans ligne d'en-tête.

• Pour finir, il faudra que dans l'autre fichier le tableau se trouve dans un onglet nommé Feuil1 et les données dans un autre onglet nommé Feuil2.

Ou alors il faudra modifier le code mais je ne connais pas ton niveau VBA pour me rendre compte si ça serait chose facile pour toi... Mais j'insiste encore une fois pour te conseiller la solution de Tulipe...

ThauThème a écrit :

Bonsoir le fil, bonsoir le forum,

Franchement, la solution de Tulipe et bien plus simple à transposer que la mienne...

Toutefois, le code qui permet d'ouvrir l'UserForm au double-clic se trouve dans l'éditeur Visual Basic (VBE qui s'ouvre avec le raccourci clavier [Alt]+[F11]) dans le composant de l'onglet "Feuil1" nommé Feuil1(Feuil1). Le voici :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) 'au double-clic dans l'onglet
'si le double-clic a lieu ailleurs que dans la plage B12:B33, sort de la procédure
If Application.Intersect(Target, Range("B12:B33")) Is Nothing Then Exit Sub
Cancel = True 'annule le mode [Édition] lié au double-clic
UserForm1.Show 'ouvre l'UserForm1
End Sub

• Comme tu vois, il ne fonctionne dans cet exemple que sur la plage B12:B33 de cet onglet. Donc si tu veux l'utiliser dans un autre fichier, il te faudra adapter cette plage...

• Il te faudra aussi, bien évidemment, copier l'Userform de ce fichier dans l'autre. VBE permet de faire ça en faisant glisser cet UserForm d'un projet à l'autre ou, autrement dit, d'un fichier à l'autre...

• il faudra encore que les données de l'onglet Feuil2 commencent dans la cellule A1 sans ligne d'en-tête.

• Pour finir, il faudra que dans l'autre fichier le tableau se trouve dans un onglet nommé Feuil1 et les données dans un autre onglet nommé Feuil2.

Ou alors il faudra modifier le code mais je ne connais pas ton niveau VBA pour me rendre compte si ça serait chose facile pour toi... Mais j'insiste encore une fois pour te conseiller la solution de Tulipe...

bonsoir a tous,

Merci ThauThème pour ta réponse. il n'y a pas très longtemps que j'utilise VBA, donc on peux dire que je suis plus novice.

j'arrive a créer de nouveau onglets dans ton document, mais une fois que je renomme l'onglet ca ne fonctionne plus. comment pourrais je faire? S'il te plais. Merci par avance.

Re,

Ça ne marchera que si les onglets ont exactement la même structure. Mets ton fichier en pièce jointe avec plusieurs onglets et je te dirai si c'est faisable ou pas... Mais, comme je t'ai dit plus haut, tu choisis la solution la plus complexe et je ne vais pas m'amuser à te faire le code pour tous tes onglets...

ThauThème a écrit :

Re,

Ça ne marchera que si les onglets ont exactement la même structure. Mets ton fichier en pièce jointe avec plusieurs onglets et je te dirai si c'est faisable ou pas... Mais, comme je t'ai dit plus haut, tu choisis la solution la plus complexe et je ne vais pas m'amuser à te faire le code pour tous tes onglets...

Bonjour le fil et ThauThème,

Je suis d'accord avec toi, le fichier de tulipe est plus simple de transposition mais pour mon chef de cuisine qui est un peu réfractaire aux ordinateurs, ta solution serais la plus facile.

je te joint mon fichier original, je ne te demande pas de me faire tout le travail, juste de me montrer sur 1 ou 2 onglets, pour que je puisses en apprendre un peu plus sur le VBA.

Je te remercie par avance.

Bonsoir le fil, bonsoir le forum,

En pièce jointe ton fichier modifié :

51sam-v02.xlsm (462.53 Ko)

Salut le fil,

ThauThème tu es génial. C'est tout à fais ce que je cherchais. Désolé de ne pas avoir répondu avant mais je n'ai pas pu me connecter.

Rechercher des sujets similaires à "recherche resultat multiple"