Rajouter une demande a mon user form

Bonjour

je dois rajouter une demande sur mon userform car il me manque une donnée. Avec le fichier fait par ric, j'ai une fenêtre qui lit une donnée colonne1 , une pour la colonne 2 et une pour la 3

comment puis je en rajouter une sur la colonne 4 ? , car il me manque une donnée essentielle

je suppose qu'il faut rajouter une ligne après TBoxCode = Worksheets("Feuil6").Cells(x, 3).Value et je pense qu'il faut mettre x,4 mais je n'en suis pas sûre

pourriez vous m'aider?

j'espère avoir été claire dans mon explication

CI DESSOUS LE CODE

Private Sub ComboBox1_Change()

Dim x As Integer

x = Me.ComboBox1.ListIndex + 1

TBoxNomProd = Worksheets("Feuil6").Cells(x, 2).Value

TBoxCode = Worksheets("Feuil6").Cells(x, 3).Value

End Sub

Private Sub Label1_Click()

End Sub

Private Sub Label2_Click()

End Sub

Private Sub Label3_Click()

End Sub

Sub test()

recherche.Show

End Sub

Private Sub Label4_Click()

End Sub

Private Sub UserForm_Click()

End Sub

Private Sub UserForm_Initialize()

Dim Dlig, i As Long

With Worksheets("Feuil6")

Dlig = .Cells(Rows.Count, 1).End(xlUp).Row

For i = 1 To Dlig

ComboBox1.AddItem .Cells(i, 1).Value

Next i

End With

End Sub

Bonjour

Un essai à tester. Te convient-il ?

Bye !

c'est parfait donc si j'ai bien tout compris il fallait rajouter :TextBox1 = Worksheets("Feuil6").Cells(X, 4).Value

je te remercie infiniment

Bises

Bonjour

a voir nouvelle combobox

Private Sub UserForm_Initialize()
    With Feuil1 ' Feuil1 = CodeName de Worksheets("Feuil6")
            ComboBox1.List = .Range(.Cells(1, 1), .Cells(Rows.Count, 4).End(xlUp)).Value
    End With
End Sub

Private Sub ComboBox1_Change()
    TBoxNomProd = ComboBox1.Column(1)
    TBoxCode = ComboBox1.Column(2)
    TextBox1 = ComboBox1.Column(3)
End Sub

A+

Maurice

super merci Archer pour ta réponse

en fait j'étais sur la bonne piste mais je n'avais pas noté textbox mais j'avais mis textcode....

Sur cette macro qui est "presque parfaite" j'ai essayé de rajouter une fonction hier soir afin que lorsque le produit n'est pas listé dans la colonne B un message apparaisse pour éviter le fameux "erreur d'exécution 1004" qui fait plus pensé a un bug qu'a autre chose

j'ai donc rajouté une fonction (en rouge) qui est très certainement incorrecte car elle fonctionne pas

je pensais également rajouter une fonction If , then mais je ne suis pas sûre que cela soit très correct non plus

votre avis a tous sera donc encore très précieux

a tous

charlotte

Private Sub ComboBox1_Change()

Dim x As Integer

x = Me.ComboBox1.ListIndex + 1

TBoxNomProd = Worksheets("Feuil6").Cells(x, 2).Value

TBoxCode = Worksheets("Feuil6").Cells(x, 3).Value

TextBox1 = Worksheets("Feuil6").Cells(x, 4).Value

End Sub

Sub DescriptionErreur()

Dim Obj As OLEObject

On Error Resume Next

'Déclenchement erreur:

'Spécifie un objet qui n'existe pas dans la feuille

Set Obj = Worksheets("Feuil6").TextBox1

MsgBox Err.Description

End Sub

Private Sub Label1_Click()

End Sub

Private Sub Label2_Click()

End Sub

Private Sub Label3_Click()

End Sub

Sub test()

recherche.Show

End Sub

Private Sub Label4_Click()

End Sub

Private Sub UserForm_Click()

End Sub

Private Sub UserForm_Initialize()

Dim Dlig, i As Long

With Worksheets("Feuil6")

Dlig = .Cells(Rows.Count, 1).End(xlUp).Row

For i = 1 To Dlig

ComboBox1.AddItem .Cells(i, 1).Value

Next i

End With

End Sub

Bonjour à tous

Nouvelle version.

Bye !

Merci GMB pour cet envoi mais il semble qu'il y ait une petite erreur car la macro bloque sur

If Worksheets("Feuil6").Cells(X, 2).Value = "" Then

super merci quand même pour ton soutien

bises

Bonjour

hum

déjà renomme les textbox dans l'ordre numérique

pour pouvoir faire des boucle

A Voir

Private Sub UserForm_Initialize()
    With Feuil1 ' Feuil1 = CodeName de Worksheets("Feuil6")
            ComboBox1.List = .Range(.Cells(1, 1), .Cells(Rows.Count, 4).End(xlUp)).Value
    End With
End Sub

Private Sub ComboBox1_Change()
    TextBox1 = ComboBox1.Column(1)
    TextBox2 = ComboBox1.Column(2)
    TextBox3 = ComboBox1.Column(3)
' test les colonnes
    For C = 1 To 3
        If ComboBox1.Column(C) = "" Then MsgBox "pas bon": Controls("TextBox" & C).SetFocus
    Next
End Sub

A+

Maurice

il semble qu'il y ait une petite erreur car la macro bloque

C'est curieux… Sur mon PC j'obtiens un message :

capture
Rechercher des sujets similaires à "rajouter demande mon user form"