Recherche multiple sur userform

Bonjour,

J'ai créé un fichier permettant d'avoir une vision global de notre zone de stockage et qui permet aussi de rechercher un article et de le localiser dans cette zone de stockage à partir d'une extraction de donnée.

Pour commencer la recherche il faut cliquer sur le bouton macro RAZ map ou aller sur la feuille16.

Cependant, pour la recherche j'ai créé un userform où nous ne pouvons rechercher qu'un article à la fois.

Je voulais savoir s'il était possible de rechercher plusieurs articles en une fois dans le userform en copiant collant les articles recherchés dans celui-ci (pour éviter de les faire un par un) et en affichant la même chose qu'actuellement après avoir lancé la recherche mais pour plusieurs articles.

Merci d'avance pour votre aide.

Bonjour

Cependant, pour la recherche j'ai créé un userform où nous ne pouvons rechercher qu'un article à la fois.

Je suppose que vous parlez de l'inputbox qui apparait lorsque vous sélectionnez la feuille16. Si oui, il s'agit c'est plutot une input box que vous avez créée

Concernant votre demande c'est tout à fait possible et si vous voulez réaliser cette recherche, cela peut se faire via une userfom comme celle de la fichier Article qui se trouve dans votre fichier.

Quels sont les critères à rechercher et dans quelles colonnes ?

Cordialement

Bonjour arnitore Dan le forum

je t'envoie ton fichier dans la matinée avec ce que tu veux

a+

Papou

Re Bonjour Arnitore Dan le forum

ton fichier en retour, avec une tout autre recherche et affichage

tu ouvres tu testes et tu me redis

a+

Papou

36artinore-v1.xlsm (297.21 Ko)

Re Bonjour Arnitore le forum

Une V2 avec un bouton de Effacer sur la feuil2

a+

Papou

26artinore-v2.xlsm (301.46 Ko)

Salut Artinore,

Salut Dan, Paritec,

petit délire Userform quoique je me demande maintenant si je ne suis pas trompé de feuille de données!! J'ai puisé les infos dans ta BDD générale !

Bref, soit ! On corrigera si nécessaire !

  • la Userform offre 5 possibilités de recherche d'articles. On pourrait évidemment envisager d'en ajouter (presque) autant qu'on veut ;
  • 5 boutons à gauche dont les couleurs seront les repères des articles recherchés sur le Plan ;
  • une checkbox "Twins" permet l'affichage de tous les articles dont le n° de référence sont proches ;
  • 5 TextBox attendent l'encodage des n° de référence (!! pas de protection contre les encodages idiots !!). Tu peux choisir d'encoder dans la ligne de ton choix si tu préfères une couleur!
  • la recherche proprement dite commence à partir du 5e chiffre encodé ;
  • si tu as encodé sous "Twins" mais que tu ne veux garder que, par exemple, hein, les 2 premiers articles, tu peux cliquer sur le bouton à gauche à hauteur de la 3e ligne : effacement des lignes d'infos 3, 4 et 5 -> SetFocus sur la TextBox de la 3e ligne ;
  • la même opération sans "Twins" n'efface que la ligne ciblée.
  • 2 boutons-icône, l'une pour sortir sans calcul, l'autre pour la localisation sur le Plan.
With Worksheets("PLAN")
    .Cells.Interior.Color = xlNone
    .Cells.ClearComments
    .Activate
    On Error Resume Next
    For x = 1 To 5
        If Me.Controls("txt" & x * 100).Text <> "" Then
            For y = 2 To 14 Step 2
                If InStr(LCase(Me.Controls("lbl" & (x * 100) + y).Caption), "non") = 0 And Me.Controls("lbl" & (x * 100) + y).Caption <> "" Then
                    .Cells.Find(what:=Me.Controls("lbl" & (x * 100) + y).Caption, lookat:=xlWhole, LookIn:=xlValues, searchdirection:=xlNext) _
                        .Interior.Color = Me.Controls("cmd" & x * 100).BackColor
                End If
            Next
        End If
    Next
    On Error GoTo 0
End With

A tester, comme on dit!

A+

Salut Artinore,

Salut Dan, Paritec,

petit délire Userform quoique je me demande maintenant si je ne suis pas trompé de feuille de données!! J'ai puisé les infos dans ta BDD générale !

Bref, soit ! On corrigera si nécessaire !

  • la Userform offre 5 possibilités de recherche d'articles. On pourrait évidemment envisager d'en ajouter (presque) autant qu'on veut ;
  • 5 boutons à gauche dont les couleurs seront les repères des articles recherchés sur le Plan ;
  • une checkbox "Twins" permet l'affichage de tous les articles dont le n° de référence sont proches ;
  • 5 TextBox attendent l'encodage des n° de référence (!! pas de protection contre les encodages idiots !!). Tu peux choisir d'encoder dans la ligne de ton choix si tu préfères une couleur!
  • la recherche proprement dite commence à partir du 5e chiffre encodé ;
  • si tu as encodé sous "Twins" mais que tu ne veux garder que, par exemple, hein, les 2 premiers articles, tu peux cliquer sur le bouton à gauche à hauteur de la 3e ligne : effacement des lignes d'infos 3, 4 et 5 -> SetFocus sur la TextBox de la 3e ligne ;
  • la même opération sans "Twins" n'efface que la ligne ciblée.
  • 2 boutons-icône, l'une pour sortir sans calcul, l'autre pour la localisation sur le Plan.
With Worksheets("PLAN")
    .Cells.Interior.Color = xlNone
    .Cells.ClearComments
    .Activate
    On Error Resume Next
    For x = 1 To 5
        If Me.Controls("txt" & x * 100).Text <> "" Then
            For y = 2 To 14 Step 2
                If InStr(LCase(Me.Controls("lbl" & (x * 100) + y).Caption), "non") = 0 And Me.Controls("lbl" & (x * 100) + y).Caption <> "" Then
                    .Cells.Find(what:=Me.Controls("lbl" & (x * 100) + y).Caption, lookat:=xlWhole, LookIn:=xlValues, searchdirection:=xlNext) _
                        .Interior.Color = Me.Controls("cmd" & x * 100).BackColor
                End If
            Next
        End If
    Next
    On Error GoTo 0
End With

A tester, comme on dit!

A+

Bonjour curulis,

J'ai essayé ton fichier, il est vraiment bien, on peut chercher plusieurs références et les voir avec des couleurs différentes sur le plan.

Cependant, je voulais savoir s'il était possible de ne pas taper un par un les codes dans le userform mais plutôt de faire un copier coller des codes recherchés (en une fois) pour un gain de temps ?

Avec le bouton twins tu as les références les plus proches mais ça ne sera pas forcément le cas.

Merci pour ton aide.

Nico

Re Bonjour Arnitore le forum

Une V2 avec un bouton de Effacer sur la feuil2

a+

Papou

Bonjour Papou,

J'ai essayé ton fichier, il permet aussi de rechercher plusieurs codes mais ils sont tous affichés de la même couleur sur le plan.

Cependant, je peux donc sélectionner plusieurs codes mais je suis toujours obligé de copier coller les codes un par un dans la recherche du userform.

Je voulais donc savoir si au lieu de les rentrer un par un dans cette partie il était possible d'avoir un genre de tableau ou plusieurs lignes pour pouvoir copier coller de tous les codes nécessaires en une seul fois?

Merci d'avance pour ton retour.

Nico

Salut Artinore,

je vais t'imaginer un truc où tu pourras sélectionner plusieurs plages de codes de ta BDD pour les intégrer automatiquement dans la USF.

Cependant :

  • il faudra alors que ces codes apparaissent tous dans l'écran. Pas question de faire défiler pour ajouter des plages!
  • limiter le nombre de codes, quand même, ou alors, tu me dis combien de lignes je dois prévoir dans l'USF... qui n'est pas extensible à l'infini!

Pas avant ce soir, voire cette nuit!

A+

Ré bonjour arnitore le forum

J'ai essayé ton fichier, il permet aussi de rechercher plusieurs codes mais ils sont tous affichés de la même couleur sur le plan.

bah oui si je regarde ton fichier tel que tu l'as fourni, il possède deux couleurs possible, le blanc et le vert !!!!!!

si maintenant il faut une couleur par recherche ce n'est pas un problème à réaliser.

Il semble que tu n’as pas bien compris comment le fichier fonctionne avec mes modifications.

Tu n’as pas lu le mode d’emploi???

Les lignes

Se remplissent toutes seules quand tu cliques sur une ligne du tableau du haut en fonction du disponible, tu as les réf et code qui s'affichent en bas, ensuite tu recherches de nouveau une autre ref ou mot dans le Textbox en haut et si tu cliques sur une des lignes du haut elle vient s'ajouter en bas s'il y a du stock naturellement !!!!

et ainsi de suite pour 10 recherches ou plus si tu veux.

Pour les couleurs il suffit de me donner la liste des couleurs à appliquer à chaque type de produit , mais pour le moment le fichier fourni donne le vert comme couleur et certaines cellules sont couleur blanche.

Quand à la recherche tu tapes même du texte et c’est filtré immédiatement

Aucun clique aucun textbox et une liste sans limite

Avec l’autre proposition au delà de 5 ref tu fais comment??? Et surtout Si tu n'as pas la référence complète tu ne trouveras pas ton produit!!

Tapes dans recherche 372 qui est un bout de ref que j'ai en tête et illico tu as les produits, le nombre de lignes sélectionnables dans la listbox du haut est illimité avec ce que je t'ai fait.

A +

Papou

Salut Artinore,

Salut Paritec,

de retour sur ce fichier qui ne m'avait pas quitté, malgré les apparences.

Ne sachant toujours pas le nombre de produits max que tu souhaites lister, j'ai fixé ce nombre à 30.

Je pense même qu'au-delà de 10 produits, personne ne pourrait mémoriser les détails de la liste!

De plus, j'ajoute que les couleurs affichées sur le plan sont les couleurs correspondant aux derniers produits de la liste : si d'autres produits sont entreposés au même endroit, leur renseignement-couleur serait "recouvert"!

Tu as 2 façons d'encoder tes références-produits :

  • la même manière manuelle que le fichier précédent en ouvrant l'USF depuis ton bouton 'RAZ Map' avec, toujours, l'option "TWINS" ;
  • depuis le tableau en 'BDD'. Lorsque tu désires sélectionner ta liste de produits à "mapper", tu cliques sur ['B1] "Code", initialement en vert, qui vire au rouge.
SANS utiliser la touche CTRL, tu sélectionnes à la volée les différentes plages de produits (uniquement dans la colonne ['B] !

Une fois close, tu valides cette multi-sélection en recliquant sur "Code".

- une fois dans l'USF, tu as accès aux mêmes options que le fichier précédent : "TWINS" + clic sur le bouton de couleur pour effacer une sélection,...

    iCol = Len(sTxt)
    With Worksheets("BDD")
        iRow = .Range("B:B").Find(what:=sTxt, lookat:=xlPart, LookIn:=xlValues, searchdirection:=xlNext).Row
        If iRow > 0 Then
            Me.Controls("txt" & iIdx * 100).Text = .Range("B" & iRow).Value
            Me.Controls("txt" & iIdx * 100).SelStart = iCol
            Me.Controls("txt" & iIdx * 100).SelLength = Len(Me.Controls("txt" & iIdx * 100).Text) - iCol
            Me.Controls("cmd" & iIdx * 100).Caption = Str(iCol)
            Do
                For x = 1 To 16
                    Me.Controls("lbl" & (iIdx * 100) + x).Caption = .Cells(iRow, x + IIf(x = 1, 0, 2))
                Next
                iOK = 1
                If Me.chkTwins.Value = True And Left(.Cells(iRow + 1, 2), iCol) = sTxt Then
                    iOK = 0
                    iRow = iRow + 1
                    iIdx = iIdx + 1
                    If iIdx >= Val(Me.cmdPlan.Caption) Then
                        Me.cmdPlan.Caption = IIf(iIdx + 1 > 30, "30", CStr(iIdx + 1))
                        FicheArticle.Height = 66 + (Val(Me.cmdPlan.Caption) * 18)
                        Me.cmdBarre.Height = (Val(Me.cmdPlan.Caption) * 18) - 3
                    End If
                    Me.Controls("txt" & iIdx * 100).Text = .Range("B" & iRow).Value
                End If
            Loop While Me.chkTwins.Value = True And iOK = 0 And iIdx < 31
        End If
    End With

A tester et corriger selon tes indications!

A+

47artinore.xlsm (288.24 Ko)

Salut Artinore,

je vais t'imaginer un truc où tu pourras sélectionner plusieurs plages de codes de ta BDD pour les intégrer automatiquement dans la USF.

Cependant :

  • il faudra alors que ces codes apparaissent tous dans l'écran. Pas question de faire défiler pour ajouter des plages!
  • limiter le nombre de codes, quand même, ou alors, tu me dis combien de lignes je dois prévoir dans l'USF... qui n'est pas extensible à l'infini!

Pas avant ce soir, voire cette nuit!

A+

Salut Curulis,

Salut Paritec,

Avec cette autre version mon problème est résolu.

Merci pour votre aide.

Artinore

Rechercher des sujets similaires à "recherche multiple userform"