Répéter une liste déroulante créée avec un combobox

Le
acaly
Bonjour,

J'ai créée une liste déroulante avec un combobox en cellule I10 et cette
dernière doit apparaître jusqu'à la cellule I372. Peut-on répéter cette
liste autrement qu'avec un copier/coller car cette manoeuvre alourdi beaucoup
trop mon formulaire.

Je dois vous informer que je ne peux créer ma liste déroulante par Données,
Validation, car je dois ajouter les propriétés suivantes à ma liste:

BoundColumn 1
ColumnCount 2
ListWidth 110
ColumnWidths 50;60
Widths 70

Pouvez-vous m'aider ?

Merci beaucoup.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
michdenis
Le #21042671
Bonjour,

Je n'ai pas tout compris, mais si tu utilises le même contenu
dans ton combobox pour la plage i10 à i372, tu peux
conserver le même combobox. En fait, tu utilises
l'événement
" Private Sub Worksheet_SelectionChange(ByVal Target As Range)"
pour déplacer le combobox dans la cellule sélectionnée par l'usager

Dans le code module de la feuille où l'action se déroule, en supposant
que ton combobox s'appelle "ComboBox1", le code pourrait
ressembler à ceci :
'---------------------------------------------
Private Sub ComboBox1_Change()
ActiveCell.Value = Me.ComboBox1.Value
End Sub
'---------------------------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Rg As Range
Set Rg = Intersect(Range("i10:i372"), Target)

If Not Rg Is Nothing And Rg.Cells.Count = 1 Then
With Me.Shapes("Combobox1")
.Left = Target.Left
.Top = Target.Top
'Si requis...
.Height = Target.Height
.Width = Target.Width
End With
End If
End Sub
'---------------------------------------------



"acaly" :
Bonjour,

J'ai créée une liste déroulante avec un combobox en cellule I10 et cette
dernière doit apparaître jusqu'à la cellule I372. Peut-on répéter cette
liste autrement qu'avec un copier/coller car cette manoeuvre alourdi beaucoup
trop mon formulaire.

Je dois vous informer que je ne peux créer ma liste déroulante par Données,
Validation, car je dois ajouter les propriétés suivantes à ma liste:

BoundColumn 1
ColumnCount 2
ListWidth 110
ColumnWidths 50;60
Widths 70

Pouvez-vous m'aider ?

Merci beaucoup.
acaly
Le #21043191
Bonjour et mersi pour la réponse,

Très très débutante en VBA et macros Excel, je me demandais comment faire
fonctionner ce code ?

Merci


"acaly" a écrit :

Bonjour,

J'ai créée une liste déroulante avec un combobox en cellule I10 et cette
dernière doit apparaître jusqu'à la cellule I372. Peut-on répéter cette
liste autrement qu'avec un copier/coller car cette manoeuvre alourdi beaucoup
trop mon formulaire.

Je dois vous informer que je ne peux créer ma liste déroulante par Données,
Validation, car je dois ajouter les propriétés suivantes à ma liste:

BoundColumn 1
ColumnCount 2
ListWidth 110
ColumnWidths 50;60
Widths 70

Pouvez-vous m'aider ?

Merci beaucoup.


michdenis
Le #21043211
| Très très débutante en VBA et macros Excel, je me
| demandais comment faire fonctionner ce code ?

Tu fais un clic droit sur l'onglet de la feuille, et dans le
menu contextuel, tu sélectionnes la commande :
"Visualiser le code". Dans la page blanche, tu copies
le code que j'ai commis.

N.B- Le combobox que j'ai utilisé émane de la boîte
d'outils contrôle.
acaly
Le #21048691
"michdenis" a écrit :

| Très très débutante en VBA et macros Excel, je me
| demandais comment faire fonctionner ce code ?

Tu fais un clic droit sur l'onglet de la feuille, et dans le
menu contextuel, tu sélectionnes la commande :
"Visualiser le code". Dans la page blanche, tu copies
le code que j'ai commis.

N.B- Le combobox que j'ai utilisé émane de la boîte
d'outils contrôle.




Encore une fois bonjour,

Veuillez pardonner mon ignorance, mais j'ai inscris votre code et celui-ci
ne démarre pas. Pouvez-vous m'expliquer comment le faire démarrer ? Moi
aussi mon combobox émane de la boîte d'outils contrôle.

Merci beaucoup



FdeCourt
Le #21048681
Salut,

En changeant la valeur du comboBox !

Cordialement,

F.
michdenis
Le #21049781
Ta plage que tu as définie dans ta question est : i10:i372

La macro est activée à chaque fois que tu cliques sur une
des cellules de la plage i10:i372. Le combobox se déplace
et prend les dimensions de la cellule que tu as sélectionnée

Lorsque tu choisis un élément du combobox, la valeur de la
cellule sous le combobox prend la valeur du combobox.
Pour déplacer le combobox à nouveau, tu cliques sur une autre
cellule de la plage i10:i372.



"acaly" :


"michdenis" a écrit :

| Très très débutante en VBA et macros Excel, je me
| demandais comment faire fonctionner ce code ?

Tu fais un clic droit sur l'onglet de la feuille, et dans le
menu contextuel, tu sélectionnes la commande :
"Visualiser le code". Dans la page blanche, tu copies
le code que j'ai commis.

N.B- Le combobox que j'ai utilisé émane de la boîte
d'outils contrôle.




Encore une fois bonjour,

Veuillez pardonner mon ignorance, mais j'ai inscris votre code et celui-ci
ne démarre pas. Pouvez-vous m'expliquer comment le faire démarrer ? Moi
aussi mon combobox émane de la boîte d'outils contrôle.

Merci beaucoup



acaly
Le #21049771
"FdeCourt" a écrit :

Salut,

En changeant la valeur du comboBox !

Cordialement,

F.

.



Bonjour,

Je suis allée dans propriétés et Value, j'imagine que c'est à cet endroit
que je dois changer la valeur du combobox, mais que dois-je inscrire ?

Merci beaucoup.
acaly
Le #21054261
Bonjour,
Finalement, le code fonctionne, sauf qu'il se déplace d'une cellule à
l'autre au lieu de se répéter.

Pouvez-vous, encore une fois, m'aider à solutionner le problème, car c'est
vraiment ce que je recherche, conserver le même combobox pour les plages I10
à I372.

Merci beaucoup.

"michdenis" a écrit :

Ta plage que tu as définie dans ta question est : i10:i372

La macro est activée à chaque fois que tu cliques sur une
des cellules de la plage i10:i372. Le combobox se déplace
et prend les dimensions de la cellule que tu as sélectionnée

Lorsque tu choisis un élément du combobox, la valeur de la
cellule sous le combobox prend la valeur du combobox.
Pour déplacer le combobox à nouveau, tu cliques sur une autre
cellule de la plage i10:i372.



"acaly" :


"michdenis" a écrit :

> | Très très débutante en VBA et macros Excel, je me
> | demandais comment faire fonctionner ce code ?
>
> Tu fais un clic droit sur l'onglet de la feuille, et dans le
> menu contextuel, tu sélectionnes la commande :
> "Visualiser le code". Dans la page blanche, tu copies
> le code que j'ai commis.
>
> N.B- Le combobox que j'ai utilisé émane de la boîte
> d'outils contrôle.


Encore une fois bonjour,

Veuillez pardonner mon ignorance, mais j'ai inscris votre code et celui-ci
ne démarre pas. Pouvez-vous m'expliquer comment le faire démarrer ? Moi
aussi mon combobox émane de la boîte d'outils contrôle.

Merci beaucoup
>


michdenis
Le #21055021
| Finalement, le code fonctionne, sauf qu'il se déplace
| d'une cellule à l'autre au lieu de se répéter.

Je ne comprends pas ton affirmation.
Que veux-tu avoir comme résultat ?
Comment le combobox doit-il se déplacer s’il doit se déplacer ?
Lorsque tu choisis un élément du combobox, où veux-tu copier
la valeur du combobox que tu as sélectionné.

C'est à toi de décrire le plus précisément possible la finalité
de ton combobox.
acaly
Le #21063601
"michdenis" a écrit :


| Finalement, le code fonctionne, sauf qu'il se déplace
| d'une cellule à l'autre au lieu de se répéter.

Je ne comprends pas ton affirmation.
Que veux-tu avoir comme résultat ?
Comment le combobox doit-il se déplacer s’il doit se déplacer ?
Lorsque tu choisis un élément du combobox, où veux-tu copier
la valeur du combobox que tu as sélectionné.

C'est à toi de décrire le plus précisément possible la finalité
de ton combobox.




Bonjour,

Comme je vous le disais, j’ai testé votre formule et c’est vraiment le
résultat recherché. Toutefois, je reçois le message Débogage et la ligne
suivante est inscrite en jaune:

If Not Rg Is Nothing And Rg.Cells.Count = 1 Then

Comment peut-on résoudre ce problème ?

Autre question: Est-il possible d’affecter cette formule à plusieurs
colonnes, car j’ai des combobox sur I10 Combobox1, J10 Combobox2, K10
Combobox6, O10 Combobox4 et P10 combobox5 et j’aimerais avoir le même
résultat.

De plus, j’aimerais savoir si je peux renseigner les propriétés suivantes et
à quel endroit :

BoundColumn 1
ColumnCount 2
ListWidth 110
ColumnWidths 50;60
Widths 70


Ces propriétés me sont nécessaires afin de réduire la largeur de la colonne
après choix de l’utilisateur dans la liste déroulante.

Un énorme merci pour votre précieuse aide.

Acaly
Publicité
Poster une réponse
Anonyme