Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

SAISIE SEMI AUTOMATIQUE


Information sur la source

Catégorie :Control Niveau : Expert Date de création : 17/05/2002 Date de mise à jour : 17/05/2002 11:23:46 Vu : 4 397

Note :
6 / 10 - par 6 personnes
6,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note

Description

voila un exemple de code permettant de faire de la saisie semi automatique
ce code fonctionne avec un combobox avec des valeurs saisies
enjoy!

 

Source

  • 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
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
 

Commentaires et avis

signaler à un administrateur
Commentaire de thrakkazz2000 le 17/05/2002 15:33:43

le beau plagia...

signaler à un administrateur
Commentaire de EXOCET le 06/07/2002 09:30:48

je vais éssayer tout de suite

signaler à un administrateur
Commentaire de algo69 le 14/02/2004 23:21:31

ça marche merci;

Tu merite bien plus que ça

signaler à un administrateur
Commentaire de Mikey_md le 21/05/2006 23:21:53

Salut, il y a un probleme quand tu "shift" les lettres, mais sinon c'est tres bien comme manip, merci

signaler à un administrateur
Commentaire de Mikey_md le 21/05/2006 23:24:47

en fait il faut ajouter    
    "If KeyCode = vbKeyShift Then Exit Sub"
apres
    "If KeyCode = vbKeyBack Then Exit Sub"

signaler à un administrateur
Commentaire de schmurtz le 05/12/2007 10:55:13

Ca m'a bien dépanné mais il doit exister des controles qui le font directement , non?
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

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,218 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.