liste déroulante modifiable

luisf

XLDnaute Occasionnel
bonjour
encore une tite question!
je souhaiterai créer une liste déroulante qui comprendrai un certain nombre de nom (2 ou 3 pour commencer). mais on devrais pouvoir ajouter un nom dans la combobox si se nom ne fais pas parti de la liste existante .

j'ai vu quelque chose a ce sujet sur le forum (question de mattew) mais je n'arrive pas a l'adapter a mon cas car ma combobox est sur la feuille excel et pas sur un userform.

merci
 

skoobi

XLDnaute Barbatruc
Re : liste déroulante modifiable

Bonjour,

regarde dans la FAQ et didacticiels précisément ici
Envoie le fichier si tu n'y arrives toujours pas.
 

luisf

XLDnaute Occasionnel
Re : liste déroulante modifiable

je n'ai pas compris ce que j'ai vu dans la FAQ.
je te joins un fichier exemple
merci
 

Fichiers joints

skoobi

XLDnaute Barbatruc
Re : liste déroulante modifiable

Re,

voici un exemple.

La zone de liste modifiable se crée quand tu actives la feuille (événement "Worksheet_Activate").
Le nom s'ajoute à la liste quand tu quittes a zone de liste modifiable.
 

Fichiers joints

luisf

XLDnaute Occasionnel
Re : liste déroulante modifiable

re,

que signifie: Range([A2], [A2].End(xlDown))???
est ce que sa veut dire de la cellule A2 jusqu'à la fin de la colonne?? car je cherche comment écrire sa!

une autre tite question par rapport à ce que tu m'a envoyé comment sa se fait que la combobox est vide? car moi j'aurai besoin que les nom reste afficher dans la combo.

merci pour tes réponses
 

skoobi

XLDnaute Barbatruc
Re : liste déroulante modifiable

que signifie: Range([A2], [A2].End(xlDown))???
ça veut dire de la cellule A2 à la dernière cellule non vide depuis A2 en partant vers le bas.
Ceci peut être simulé en sélectionnant la cellule A2 puis touche "Fin" ensuite "flèche bas".
une autre tite question par rapport à ce que tu m'a envoyé comment sa se fait que la combobox est vide?
Comme je l'ai dis avant la liste se créé quand tu active la feuille c'est à dire que quand tu sélectionnes une autre feuille et que tu reviens dessus, la liste est créée.
 

luisf

XLDnaute Occasionnel
Re : liste déroulante modifiable

le A2 jusqu'à la dernière cellule non vide c'est ce que je cherchait a faire pour un autre truc. donc impeccable

je vais t'embêter encore une dernière fois comment dois je faire pour que la feuille soit active dès le début?
car il faut que ma liste soit pleine dès l'ouverture du fichier.
 

skoobi

XLDnaute Barbatruc
Re : liste déroulante modifiable

Dans ce cas supprime le code

"Private Sub Worksheet_Activate"

et cré celui-ci dans Thisworkbook (fenêtre projet à gauche):

Code:
Private Sub Workbook_Open()
With Sheets("Feuil1")
    .ComboBox1.Clear
    For Each cellule In .Range(.[A2], .[A2].End(xlDown))
        .ComboBox1.AddItem cellule.Value
    Next
End With
End Sub
Edit: j'ai modifié le code.
 
Dernière édition:

luisf

XLDnaute Occasionnel
Re : liste déroulante modifiable

je ne comprend pas a quoi sert le: Sheets("Feuil1").ComboBox1.Clear
j'essaye de comprendre ce ke je fais car sa va me resservir

je n'arrive pas à avoir ma combobox remplie même en faisant ce que tu viens de me dire. alors que lorsque je rajoute un nom il se met bien à la suite des autres!
 

skoobi

XLDnaute Barbatruc
Re : liste déroulante modifiable

je ne comprend pas a quoi sert le: Sheets("Feuil1").ComboBox1.Clear
Cela permet de vider la liste, plus nécessaire maintenant que le code est déplacé.
Ci-joint le fichier.
 

Fichiers joints

speeder974

XLDnaute Nouveau
Re : liste déroulante modifiable

Bonjour bonjour,
je m'incruste un peu dans votre discussion.
Déjà merci pour cette aide pour utiliser la combobox que je cherchais depuis longtemps.

J'ai une autre question dans le prolongement de ce sujet:

J'ai repris le fichier à ma sauce.
Je voudrais que lorsque je selectionne dans la combobox "auto" ou " " ou "moto":
- la cellule D8 affiche la meme chose
ou bien
- la formule qui est base sur l'attente du mot "auto" ou autres fassent son pti calcul tout seul comme si le mot etait tapez en D8.

J'aimerais bien avoir les deux réponses, j'en serai soulagé :):)

en attente...
merci:cool:
 

Fichiers joints

Pierrot93

XLDnaute Barbatruc
Re : liste déroulante modifiable

Bonjour Speder

tu aurais peut être du créer un nouveau fil, c'est plus éfficace pour avoir une réponse spécifique...

modififies peut être tes codes comme ci dessous :

dans le module de la feuille :

Code:
Private Sub ComboBox1_Change()
If ComboBox1.ListIndex <> -1 And ComboBox1.Value <> "" Then _
    Range("D8").Value = ComboBox1.Value
End Sub
dans le module "thisworkbook", je préférerais une alimentation de la combo comme suit :

Code:
Private Sub Workbook_Open()
With Sheets("Feuil1")
    .ComboBox1.List = .Range("A3:A" & .Range("A65536").End(xlUp).Row).Value
End With
End Sub
bonne journée
@+
 

CHALET53

XLDnaute Barbatruc
Re : liste déroulante modifiable

Bonjour à tous,

j'utilise de temps en temps les userforms, mais dans le cas présent, je n'arrive pas à déterminer comment est créé le combobox (pas de userform dans VBE)

Merci de compléter me connaisssances

A+
 

Pierrot93

XLDnaute Barbatruc
Re : liste déroulante modifiable

Bonsoir à tous

@Chalet
dans le classeur de Speeder, le combobox est placé directement sur la feuille du classeur.

bonne soirée
@+
 

CHALET53

XLDnaute Barbatruc
Re : liste déroulante modifiable

Bonsoir Pierrot,

Merci mais comment on le crée directement sur la feuille ?

Merci d'avance pour un complément d'infos

A+
 

Pierrot93

XLDnaute Barbatruc
Re : liste déroulante modifiable

Bonjour Chalet

sur Excel => barre d'outils "boite à outils controles", tu cliques sur "bouton de commande" et tu le "dessines" sur la feuille.

bonne journée
@+
 

Discussions similaires


Haut Bas