XL 2016 VBA - demande de correction d'un code pour formulaire

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

FooFighters82

XLDnaute Nouveau
Bonjour à tous,
j'ai trouver sur YT un tuto qui correspond à peut prêt à ce que je souhaite faire : Tuto, à savoir un formulaire qui appelle toutes les infos dont j'ai besoin en fonction d'un code client (liste déroulante)
Par contre je n'ai qu'une combobox et non 2 comme dans le tuto voir fichier joint
Comme je n'y comprend pas grand chose en VBA, je me suis contenté de recopier et de suppr les lignes qui me paraissaient inutiles.
Je n'arrive pas à faire fonctionner mon formulaire donc j'en appelle à vos connaissances pour me venir en aide afin que je puisse frimer au boulot avec un formulaire qui envoie du lourd 😁
Le raccourci pour lancer le formulaire est "Ctrl + F"
Par avance merci
SeB
 

Pièces jointes

Solution
Bonjour
vire moi tout les bribes de codes dans le module userform et met ceci
VB:
Option Explicit
'Pour le formulaire
Private Sub UserForm_Initialize()
    With ComboBox1
        .List = Range("Tableau1").ListObject.ListColumns(1).Range.Value
        .RemoveItem (0)
    End With
End Sub

'Pour la liste déroulante Code client
Private Sub ComboBox1_Change()
    Dim x&
    If ComboBox1.ListIndex = -1 Then Exit Sub
    x = ComboBox1.ListIndex + 1
    With Range("Tableau1").Rows(x)
        TextBox1 = .Cells(1, 2): TextBox2 = .Cells(1, 3)
        TextBox3 = .Cells(1, 4): TextBox4 = .Cells(1, 5)
        TextBox5 = .Cells(1, 6)
    End With
End Sub

'Pour le bouton Nouveau Client
Private Sub CommandButton1_Click()
    Dim r
    If...
Bonjour
vire moi tout les bribes de codes dans le module userform et met ceci
VB:
Option Explicit
'Pour le formulaire
Private Sub UserForm_Initialize()
    With ComboBox1
        .List = Range("Tableau1").ListObject.ListColumns(1).Range.Value
        .RemoveItem (0)
    End With
End Sub

'Pour la liste déroulante Code client
Private Sub ComboBox1_Change()
    Dim x&
    If ComboBox1.ListIndex = -1 Then Exit Sub
    x = ComboBox1.ListIndex + 1
    With Range("Tableau1").Rows(x)
        TextBox1 = .Cells(1, 2): TextBox2 = .Cells(1, 3)
        TextBox3 = .Cells(1, 4): TextBox4 = .Cells(1, 5)
        TextBox5 = .Cells(1, 6)
    End With
End Sub

'Pour le bouton Nouveau Client
Private Sub CommandButton1_Click()
    Dim r
    If ComboBox1.ListIndex > -1 Then Exit Sub    'pour ne pas ajouter un client deja existant
    Set r = Range("Tableau1").ListObject.ListRows.Add.Range
    r.Value = Array(ComboBox1, TextBox1, TextBox2, TextBox3, TextBox4, TextBox5)
End Sub

'Pour le bouton Modifier
Private Sub CommandButton2_Click()
    Dim r, x
    If ComboBox1.ListIndex = -1 Then Exit Sub    'si pas de selection dans la combo le bouton ne fait rien
    x = ComboBox1.ListIndex + 1
    Set r = Range("Tableau1").ListObject.ListRows(x).Range
    r.Value = Array(ComboBox1, TextBox1, TextBox2, TextBox3, TextBox4, TextBox5)
End Sub

'Pour  le bouton quitter

Private Sub Comandbotton3_click()
    Unload Me
End Sub

@ plus
et frime pas trop quand même hein y en a bien un qui serait capable de te demander de lui expliquer le code LOL!!!!!
 
Hello Patrick
un GRAND merci à toi c'est top !
par contre le bouton quitter ne fonctionne pas sur le formulaire et, y a t'il une possibilité d'afficher le code barre de la colonne F dans le formulaire ? (j'ai installé une police spécifique que j'utilise sur la colonne F afin d'afficher un code barre).
(mdr pour l'explication y a pas de risque)
Merci
 

Pièces jointes

Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
233
Retour