Comment utiliser des ComboBox

Signaler
Messages postés
44
Date d'inscription
lundi 27 juin 2005
Statut
Membre
Dernière intervention
3 novembre 2008
-
Messages postés
44
Date d'inscription
lundi 27 juin 2005
Statut
Membre
Dernière intervention
3 novembre 2008
-
saluttout le monde
je voudrai bien affichier le contenu d'une table (ke jé réaliser avec microsoft access et ki contient un seul champ ki est une liste de noms) dans un conbobox ou un outil de tel facon kil m'aide lors de la saisie. j'espère ke c bien calair. s'il vous plais je veut ke la réponse soit concrète càd du code ou un lien ki explique bien mon problème. e c serai génial si ca serai du code

en tout k merci de votre attention

4 réponses

Messages postés
205
Date d'inscription
samedi 22 janvier 2005
Statut
Membre
Dernière intervention
28 novembre 2005
2
ouio mais peut tu préciser si tu es sous acces ou VB?

A tout de suite

PtitGrumo
Messages postés
44
Date d'inscription
lundi 27 juin 2005
Statut
Membre
Dernière intervention
3 novembre 2008

ah oui pardon
je suis sous visual basic 6.0
merci beaucoup pour votre attention
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
131
Donc si j'ai bien compris, tu veux remplir un combobox et qu'il ai une
auto-complétion lorsque tu tape du texte dedans, je me trompe ?



Si c'est cà, voici un petit code :

Public Sub CompletionCombo(ByVal cmbCombo As Object, ByVal KeyCode As Integer)



'======================================================================

'Sub : CompletionCombo

'Date : 16/11/2004

'Auteur : DarK Sidious

'But : Permet de complèter automatiquement le texte entré dans un combo

'======================================================================



'on active la routine de traitement d'erreur

On Error Resume Next

'l'erreur etant minime, on continue l'éxécution normalement



'déclaration des variables privées

Dim lFor1 As Long 'stocke les valeurs de la boucle For->Next

Dim sTexte As String 'stocke le texte du combo



'déclaration des constantes privées

Const RGBERROR = vbRed 'couleur du fond en cas d'erreur



'touche que l'on ne doit pas gérer dans cette procedure

If KeyCode vbKeyUp Or KeyCode vbKeyDown Or KeyCode = vbKeyLeft Or KeyCode = vbKeyRight Then Exit Sub



With cmbCombo



'action spéciale pour la touche BACK

If KeyCode <> vbKeyBack Then



sTexte = Mid(.Text, 1, Len(.Text) - .SelLength)



Else



If .Tag <> "" Then sTexte = Mid(.Tag, 1, Len(.Tag) - 1)



End If



' recherche de la correspondance

For i = 0 To .ListCount - 1



If UCase(sTexte) = UCase(Mid(.List(i), 1, Len(sTexte))) Then



.ListIndex = i

Exit For



End If



Next



'selection de la partie que l'on a rajouté automatiquement

.SelStart = Len(sTexte)

.SelLength = Len(.Text) - Len(sTexte)



'change la couleur de fond en cas d'erreur

.BackColor IIf(.ListIndex -1, RGBERROR, m_lMiddleColor)



'on stocke le nouveau texte

.Tag = sTexte



End With



End Sub



Pour l'utiliser : colle ce code dans un module ou dans ta feuille, et
il s'utilise comme cà (dans l'événement MouseUp de ton combo) :


Private Sub Combo1_MouseUp(...)



Call CompletionCombo(Combo1, KeyCode)



End Sub


DarK Sidious

Un API Viewer (pour le VB, VB.NET, C, C# et Delphi) : www.ProgOtoP.com/popapi/
Messages postés
44
Date d'inscription
lundi 27 juin 2005
Statut
Membre
Dernière intervention
3 novembre 2008

merci darksidious je vais essayer ca