[Excel VBA] Liste déroulable ComboBox
Résolu
aquarelle
Messages postés
7435
Statut
Modérateur
-
aquarelle Messages postés 7435 Statut Modérateur -
aquarelle Messages postés 7435 Statut Modérateur -
Bonsoir à tous,
J'ai créé un modèle de devis que j'utilise depuis un certain temps dans lequel j'ai mis une liste déroulable contenant le nom des clients. (Les clients étant dans un fichier Contacts.xls me servant de base de données).
Lors de la création du modèle de devis, j'ai créé la liste déroulante avec celle contenue dans la barre d'outils "formulaire".
Je voudrais, maintenant, utiliser celle se trouvant dans la barre d'outils "boîte à outils contrôles" afin de ne plus avoir à dérouler toute la liste des clients pour sélectionner celui dont j'ai besoin. Je voudrais pouvoir saisir les premières lettres voir le nom en entier pour le trouver plus rapidement.
J'ai donc besoin d'aide pour créer le code VBA de cette ComboBox. (Info complémentaire, j'utilise Excel 2002)
Vous trouverez mon fichier sur ce lien : https://www.cjoint.com/?dmaJLo7704
Vous remerciant d'avance pour toute l'aide que vous pourrez m'apporter.
Bonne nuit
J'ai créé un modèle de devis que j'utilise depuis un certain temps dans lequel j'ai mis une liste déroulable contenant le nom des clients. (Les clients étant dans un fichier Contacts.xls me servant de base de données).
Lors de la création du modèle de devis, j'ai créé la liste déroulante avec celle contenue dans la barre d'outils "formulaire".
Je voudrais, maintenant, utiliser celle se trouvant dans la barre d'outils "boîte à outils contrôles" afin de ne plus avoir à dérouler toute la liste des clients pour sélectionner celui dont j'ai besoin. Je voudrais pouvoir saisir les premières lettres voir le nom en entier pour le trouver plus rapidement.
J'ai donc besoin d'aide pour créer le code VBA de cette ComboBox. (Info complémentaire, j'utilise Excel 2002)
Vous trouverez mon fichier sur ce lien : https://www.cjoint.com/?dmaJLo7704
Vous remerciant d'avance pour toute l'aide que vous pourrez m'apporter.
Bonne nuit
A voir également:
- Vba combobox liste déroulante
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Liste code ascii - Guide
- Liste déroulante google sheet - Accueil - Guide bureautique
- Site dangereux liste - Guide
3 réponses
Bonjour tout le monde,
Je vous remets un lien car dans le fichier que j'ai mis sur l'autre lien, le projet VBA est protégé, dans ce nouveau, il ne l'est pas : https://www.cjoint.com/?dmjHonpnEG
Voilà ce que c'est de faire les choses à une heure avancée de la nuit ;-))
Je vous souhaite une bonne matinée
Je vous remets un lien car dans le fichier que j'ai mis sur l'autre lien, le projet VBA est protégé, dans ce nouveau, il ne l'est pas : https://www.cjoint.com/?dmjHonpnEG
Voilà ce que c'est de faire les choses à une heure avancée de la nuit ;-))
Je vous souhaite une bonne matinée
Bonjour aquarelle,
Tu n'as pas besoin de VBA juste pour une combobox comme ça.
- Commence par nommer ta plage de clients
- Clique droit sur ta combobox et choisis Propriétés.
- Pour la propriété ListFillRange, tu mets le nom de la plage qui contient les clients
- Pour la propriété LinkedCelll, tu mets la référence de la cellule où doit se trouver le résultat
C'est tout si tu ne veux rien de plus compliqué ! ;)
m@rina
Tu n'as pas besoin de VBA juste pour une combobox comme ça.
- Commence par nommer ta plage de clients
- Clique droit sur ta combobox et choisis Propriétés.
- Pour la propriété ListFillRange, tu mets le nom de la plage qui contient les clients
- Pour la propriété LinkedCelll, tu mets la référence de la cellule où doit se trouver le résultat
C'est tout si tu ne veux rien de plus compliqué ! ;)
m@rina
Bonjour Marina,
Merci de ta réponse mais il semble que ce soit un peu plus compliqué car en B2, je ne veux pas que s'écrive le nom que je sélectionne mais que s'écrive le numéro d'index.
<Edit>En fait, je viens de trouver, j'ai utilisé ce que tu me disais Marina, mais j'ai laissé vide la propriété "LinkedCell" et j'ai écris ce bout de code :
<Edit>
Encore merci et bonne fin de journée
A bientôt
Merci de ta réponse mais il semble que ce soit un peu plus compliqué car en B2, je ne veux pas que s'écrive le nom que je sélectionne mais que s'écrive le numéro d'index.
<Edit>En fait, je viens de trouver, j'ai utilisé ce que tu me disais Marina, mais j'ai laissé vide la propriété "LinkedCell" et j'ai écris ce bout de code :
Private Sub ListNoms_Click()
Dim Num As Integer
Select Case ListNoms.ListIndex
End Select
Num = (ListNoms.ListIndex) + 1
Range("B2").Value = Num
End Sub
<Edit>
Encore merci et bonne fin de journée
A bientôt