Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Ecriture dans Combobox

VBA_dev_Anne_Marie

XLDnaute Occasionnel
Bonjour ma combobox est liée à une base de données. Néanmoins, je voudrais écrire la donnée manuellement dans la combobox, si la donnée est introuvable.
Est-ce qu'il y a une option pour cela ? Est-ce que je peux ajouter une ligne à vide dans la combobox ?

Merci beaucoup !
 
Solution
bonsoir
si j'ai bien compris
voir du coté des propriétés des combo.
Du coté du style
DropDownlist: on n'a accès qu'a une liste , on ne peut pas inscrire des items ne figurant pas dans la liste
Dropdowncombo : on peut rajouter des items ne figurant pas dans la liste

regarde aussi la propriété matchentry

Dranreb

XLDnaute Barbatruc
Bonsoir.
Je ne comprends pas trop la question, parce que pour moi la touche flèche demandant l'affichage de la liste n'est qu'un service auxiliaire et non la façon principale de l'utiliser. Pour moi c'est avant tout une zone de saisie avec recherche de correspondance dans une liste. En tout cas il n'y a rien de spécial à prévoir pour permettre la saisie dans une ComboBox, et pour moi c'est même la façon normale de l'utiliser, au moins jusqu'à ce qu'éventuellement le début tapé fasse venir automatiquement tout le texte existant qu'on y voulait.
 

VBA_dev_Anne_Marie

XLDnaute Occasionnel

Merci ! En fait, je voulais ajouter le texte, si je ne le trouve pas dans la liste.
 

vgendron

XLDnaute Barbatruc
Bonsoir

le combo étant alimenté par une liste prédéfinie, si tu ecris manuellement un élément NON listé (= nouvel élément), , le combobox.listindex sera = -1
==> c'est donc un moyen de savoir si tu peux l'ajouter dans le combo
VB:
if me.combobox.listindex=-1 then 'si AUCUN élément selectionné OU élement non listé
    me.combobox.additem  me.combobox 'on ajoute l'élément
end if
 

VBA_dev_Anne_Marie

XLDnaute Occasionnel
Merci, si j'ajoute ce code, une ligne vide sera affichée dans ma Combobox ?
 

VBA_dev_Anne_Marie

XLDnaute Occasionnel
J'ai ajouté le code, en fait j'ai toujours de la surbrillance quand je commence à saisir le texte et les données de la liste s'affichent.
 

JM27

XLDnaute Barbatruc
bonsoir
si j'ai bien compris
voir du coté des propriétés des combo.
Du coté du style
DropDownlist: on n'a accès qu'a une liste , on ne peut pas inscrire des items ne figurant pas dans la liste
Dropdowncombo : on peut rajouter des items ne figurant pas dans la liste

regarde aussi la propriété matchentry
 

VBA_dev_Anne_Marie

XLDnaute Occasionnel
En fait, j'ajoute bien l'élément dans le ComboBox mais je n'arrive pas à récupérer cette valeur avec les fonctions _Change et _Click (comme la valeur était ajoutée manuellement). Auriez-vous des suggestions ?

Merci beaucoup !
 

Dranreb

XLDnaute Barbatruc
Qu'est-ce que vous racontez ? L'évènement Change d'une ComboBox se déclenche quand vous tapez un texte qui ne figure pas dans sa liste. Mais sa propriété MatchFound est alors False et son ListIndex vaut -1. Par contre ses propriétés Value et Text donnent le texte tapé.
 

VBA_dev_Anne_Marie

XLDnaute Occasionnel
Bonjour,

Voici les propriété du comBobox :



Mais je n'arrive pas à récupérer le texte rentré manuellement "MMMMMMMMMMMMMPPPPPR" avec

Private Sub Part_cible_Click()
Worksheets("2 - Nouveau ").Range("Nouveau") = Me.Part_cible.Value
End Sub


Merci pour votre aide !
 

Pièces jointes

  • 1683911366232.png
    32.2 KB · Affichages: 6

JM27

XLDnaute Barbatruc
Bonsoir
et si tu postais un petit fichier, cela nous éviterai de ramer.
De plus avec 372 post au compteur , tu dois savoir que c'est bien utile.
Sinon les gens passerons la main et tu n'auras pas de réponse correcte
 
Réactions: cp4

Discussions similaires

Réponses
27
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…