Vba alimentation de textbox par une référence

Résolu
Bonjour,
j'ai un formulaire(Useform) avec plusieurs textbox : textbox_référence, texbox1, texbox2 et textbox3.
j'ai un tableau avec dans la colonne A des n° de référence, dans la colonne B,C et D du texte.
jai besoin que lorsque je tape un numéro de reférence dans "textbox_référence" une macro alimente texbox1, texbox2 et textbox3 avec les données de la même ligne que le n° de référence.
Exemple : je tape n° de référence : 123456 situé en ligne A23, alors B23, C23, et D23 alimente mes texbox1, texbox2 et textbox3.

Voilà j'esspere que cest assez clair merci de m'aider a bientot.

8 réponses

  1. Salut tu sais faire les boucles pour selectionner la réf que tu cherche? auquel cas apres pour alimenter les TxtBx c'est pas bien dure ou faut-il te faire la boucle aussi?
    0
    1. ca serait sympa de bien vouloir faire la boucle, je comprends pas bien comment les utiliser.merci !
      0
      1. Bon si je n'ai point fait d'erreur tu as juste à copier ce code dans ton USF et ça doit marcher si tu as synthaxé les nom de tes textbox comme il faut sinon tu ajustera au besoin. . . .

        Private Sub NomDeTonBoutton_Click()

        Dim a As Long 'je declare mes variables en long
        Dim b As Long

        a = 2 ‘je commence ma boucle à partir de la ligne 2
        b = textbox_référence

        Do
        a = a + 1
        If a = 550 Then 'si j'arrive à 550 je lance msgbx
        NomDeTonUSF.Hide
        MsgBox “LeTexteQueTuVeuxEnCasdErreur”
        Exit Do
        End If
        Loop Until Application.Cells(a, 1) = b 'je boucle jusqu'à la ligne egale à b

        Application.Cells(a, 1).Select ‘ je selectione la cellule correspondante à la réf tapée

        'je remplis mes TxtBx

        Textbox1 = ActiveCell.Offset(0, 1) ‘ 0 par ce que c’est sur la meme ligne et 1 car c’est une cellule après celle qui est activeTextbox2 = ActiveCell.Offset(0, 2)
        Textbox3 = ActiveCell.Offset(0, 3)

        End Sub


        En gras tu as les commentaire il te reste à ajuster le nom du Sub selon le nom de ton USF et aussi à la ligne If a = 550 tu doit mettre le nombre de ligne max non pas qui existe mais le max pouvant existergenre si tu en à 300 et que tu risque pas d'en avoir beaucoup plus ben 550 c'est bon, j'espere que ça vas marcher si tu as des questions. . . . .
        1
        1. merci beaucoup informatifien ca fonctione tres bien !
          0
          1. et bé de rien ça m'as fait plaisir
            0
            1. ah petite astuce au lieu d'une textbox pour ta réference utilise une combobox avec la propriété ROWSOURCE tu tape A1:A1000 par exemple et grace à ça quand tu commencera à taper une référence il ecrira la suite automatiquement et tu aura une liste déroulante. . . . .
              0
              1. Oui effectivement, très pratique! merci pour l'astuce ! ya des pros ici.
                0
                1. oula non non je suis amateur j'ai commencé le VBA il y a 2 ou 3 mois mais à force de gratter et de fréquenter CCM . . . on progresse ;)
                  0