Dim Clicknum As Integer
Private Sub Combo1_Click()
Clicknum = Clicknum + 1
Select Case Clicknum
Case 1
Text1= Combo1.Text
Case 2
Text2 = Combo1.Text
Case 3
Text3 = Combo1.Text
Case 4
Text4 = Combo1.Text
End Select
End Sub
Avec ce code, le premier remplissage des textboxes se fait trés bien mais si je voudrai faire un deuxième remplissage le code ne marche pas comme il le faut.
c-à-d, si je remplis text1 et text2 puis je quitte la forme. Ensuite, je reviens au mème forme pour faire un nouveau remplissage, je clique sur combo1; le remplissage commence par text3 meme si text1 et text2 sont vides. Alors que mois je voudrais que le remplissage commence par text1.
Private Sub Combo1_Click()
Dim i As Long
For i = 1 To 4
With Controls("Text" & i)
If .Text = vbNullString Then
.Text = Combo1.Text
Exit For
ElseIf .Text = Combo1.Text Then
Exit For
End If
End With
Next
End Sub
note que je ne suis pas sur d'avoir cerné le but de ton code...
Là, ca va remplir les zones de texte Text1 à Text4... si elles sont vides et que la valeur de Combo1 n'est pas déjà présente...
"je quitte la forme."
Comment fais-tu ?
Est-ce que tu la décharges ou est-ce que tu la masques seulement ?
Si Clicknum est déclaré en tête de cette forme, il gardera sa valeur.
Si tu ne veux pas toucher à ta méthode de "quittage de forme", remets à zéro ta variable Clicknum en même temps que tu réaffiches la forme.
Pour cela, il te faudra peut-être déclarer Clicknum en Public au lieu du Dim
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)