Soyez le premier à donner votre avis sur cette source.
Snippet vu 8 220 fois - Téléchargée 43 fois
Private Sub Combo1_KeyUp(KeyCode As Integer, Shift As Integer) 'Saisie semie-automatique If KeyCode = vbKeyBack Then Exit Sub Dim inc1 As Integer Wcount = Len(Combo1.Text) If Combo1.Text = "" Then Exit Sub For inc1 = 0 To Combo1.ListCount - 1 If LCase(Combo1.Text) = LCase(Left(Combo1.List(inc1), Wcount)) Then Combo1.Text = Combo1.Text & Mid(Combo1.List(inc1), Combo1.SelStart + 1) Combo1.SelStart = Wcount Combo1.SelLength = Len(Combo1.Text) Exit For End If Next inc1 End Sub
19 sept. 2009 à 16:54
5 déc. 2007 à 10:55
En tous cas deux petites modifs sont necessaires :
celle citée ci dessus pour ne pas prendre en compte la touche shift et un petit test pour eviter que ça déconne quond on tape très vite (et que plusieurs occurence de la fonction sont lancées en même temps). Au final :
Private Sub Combo1_KeyUp(KeyCode As Integer, Shift As Integer)
'Saisie semie-automatique
If KeyCode = vbKeyShift Then Exit Sub
If KeyCode = vbKeyBack Then Exit Sub
If Combo1.Text = "" Then Exit Sub
Dim inc1 As Integer
Wcount = Len(Combo1.Text)
For inc1 = 0 To Combo1.ListCount - 1
If LCase(Combo1.Text) = LCase(Left(Combo1.List(inc1), Wcount)) Then
'Combo1.Text = Combo1.Text & Mid(Combo1.List(inc1), Combo1.SelStart + 1)
Combo1.Text = Combo1.List(inc1)
If Wcount <> Len(Combo1.Text) Then
Combo1.SelStart = Wcount
Combo1.SelLength = Len(Combo1.Text)
Exit For
End If
End If
Next inc1
End Sub
21 mai 2006 à 23:24
"If KeyCode = vbKeyShift Then Exit Sub"
apres
"If KeyCode = vbKeyBack Then Exit Sub"
21 mai 2006 à 23:21
14 févr. 2004 à 23:21
Tu merite bien plus que ça
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.