OVH Cloud OVH Cloud

Combobox et Index

8 réponses
Avatar
Hervé
Bonjour
J'ai un combobox sur un userform et une liste de nom dans une feuille
[Liste!A2:A50] je souhaite que lorsque je clic sur les éléments de mon
comboxbox cela s'index sur les éléments de ma liste :
Ex : je clique sur sur le 2ème élément de la liste du combobox,cela pointe
sur le 2 élément de la liste sur la feuille.
Merci beaucoup
Hervé

8 réponses

Avatar
AV
Ex : je clique sur sur le 2ème élément de la liste du combobox,cela pointe
sur le 2 élément de la liste sur la feuille.


Si ta liste est en A2:Ax de la feuille "Liste"

Private Sub ComboBox1_Change()
Application.Goto Reference:="Liste!R" & ComboBox1.ListIndex + 2 & "C1"
End Sub

AV

Avatar
Rai
Slt Hervé,

Lig = ComboBox1.ListIndex + x 'où x=numéro de première ligne de ta liste
te donne la ligne de ta correspondant au choix dans la combobox

ensuite, libre à toi de pointer :
Sheets("Liste").cells(Lig,1)
ou
Sheets("Liste").Range("A" & Lig)
ou
...


Bon Dimanche

Rai

"Hervé" a écrit dans le message de news: e%23xXiD7%
Bonjour
J'ai un combobox sur un userform et une liste de nom dans une feuille
[Liste!A2:A50] je souhaite que lorsque je clic sur les éléments de mon
comboxbox cela s'index sur les éléments de ma liste :
Ex : je clique sur sur le 2ème élément de la liste du combobox,cela pointe
sur le 2 élément de la liste sur la feuille.
Merci beaucoup
Hervé







Avatar
Hervé
Bonjour AV c'est très bien, mais est-il possible que cela pointe sur la
feuille sans sélectionner celle-ci ?
Merci encore
Hervé


"AV" a écrit dans le message de news:
%23QaV7U7%
Ex : je clique sur sur le 2ème élément de la liste du combobox,cela
pointe
sur le 2 élément de la liste sur la feuille.


Si ta liste est en A2:Ax de la feuille "Liste"

Private Sub ComboBox1_Change()
Application.Goto Reference:="Liste!R" & ComboBox1.ListIndex + 2 & "C1"
End Sub

AV






Avatar
Hervé
Bonjour Raimond
Je te remercie, mais cela me renvoit uen erreur 438 ?
Je ne vois pas pourquoi cela plante !
Hervé

Private Sub ComboBox1_Change()
Lig = ComboBox1.ListIndex + 2 'où x=numéro de première ligne de ta liste
Sheets("Liste").Range ("A" & Lig)
End Sub



"Rai" a écrit dans le message de news:
%231vQCW7%
Slt Hervé,

Lig = ComboBox1.ListIndex + x 'où x=numéro de première ligne de ta liste
te donne la ligne de ta correspondant au choix dans la combobox

ensuite, libre à toi de pointer :
Sheets("Liste").cells(Lig,1)
ou
Sheets("Liste").Range("A" & Lig)
ou
...


Bon Dimanche

Rai

"Hervé" a écrit dans le message de news:
e%23xXiD7%
Bonjour
J'ai un combobox sur un userform et une liste de nom dans une feuille
[Liste!A2:A50] je souhaite que lorsque je clic sur les éléments de mon
comboxbox cela s'index sur les éléments de ma liste :
Ex : je clique sur sur le 2ème élément de la liste du combobox,cela pointe
sur le 2 élément de la liste sur la feuille.
Merci beaucoup
Hervé







Avatar
Rai
ben, tu "ne fais rien" de Sheets("Liste").Range ("A" & Lig) ...

Il faudrait que tu places l'adresse dans une variable
Adr=Sheets("Liste").Range ("A" & Lig)
ou que tu changes la couleur de de l'adresse,
Sheets("Liste").Range ("A" & Lig).interior.colorindex = 3
ou
......

Bref il faut que tu utilises le résultat quelquepart.

Sheets("Liste").Range ("A" & Lig) tout seul ne suffit pas pour VB, VB ne sait pas quoi en faire.


Rai

"Hervé" a écrit dans le message de news: eeQkgb7%
Bonjour Raimond
Je te remercie, mais cela me renvoit uen erreur 438 ?
Je ne vois pas pourquoi cela plante !
Hervé

Private Sub ComboBox1_Change()
Lig = ComboBox1.ListIndex + 2 'où x=numéro de première ligne de ta liste
Sheets("Liste").Range ("A" & Lig)
End Sub



"Rai" a écrit dans le message de news:
%231vQCW7%
Slt Hervé,

Lig = ComboBox1.ListIndex + x 'où x=numéro de première ligne de ta liste
te donne la ligne de ta correspondant au choix dans la combobox

ensuite, libre à toi de pointer :
Sheets("Liste").cells(Lig,1)
ou
Sheets("Liste").Range("A" & Lig)
ou
...


Bon Dimanche

Rai

"Hervé" a écrit dans le message de news:
e%23xXiD7%
Bonjour
J'ai un combobox sur un userform et une liste de nom dans une feuille
[Liste!A2:A50] je souhaite que lorsque je clic sur les éléments de mon
comboxbox cela s'index sur les éléments de ma liste :
Ex : je clique sur sur le 2ème élément de la liste du combobox,cela pointe
sur le 2 élément de la liste sur la feuille.
Merci beaucoup
Hervé











Avatar
Hervé
Tu as entièrement raison Raimond
Sheets("Liste").Range("A" & Lig) = ""
je désirai voir la sélection, mais cela est parfait.
Merci beaucoup c'est impeccable.
Bon dimanche à Berlin, je vais aller faire faire un p'tit tour
il y a un petit rayon de soleil
Gehen ist gesund !
Hervé



"Rai" a écrit dans le message de news:
Oxbx5e7%
ben, tu "ne fais rien" de Sheets("Liste").Range ("A" & Lig) ...

Il faudrait que tu places l'adresse dans une variable
Adr=Sheets("Liste").Range ("A" & Lig)
ou que tu changes la couleur de de l'adresse,
Sheets("Liste").Range ("A" & Lig).interior.colorindex = 3
ou
......

Bref il faut que tu utilises le résultat quelquepart.

Sheets("Liste").Range ("A" & Lig) tout seul ne suffit pas pour VB, VB ne
sait pas quoi en faire.


Rai

"Hervé" a écrit dans le message de news:
eeQkgb7%
Bonjour Raimond
Je te remercie, mais cela me renvoit uen erreur 438 ?
Je ne vois pas pourquoi cela plante !
Hervé

Private Sub ComboBox1_Change()
Lig = ComboBox1.ListIndex + 2 'où x=numéro de première ligne de ta liste
Sheets("Liste").Range ("A" & Lig)
End Sub



"Rai" a écrit dans le message de news:
%231vQCW7%
Slt Hervé,

Lig = ComboBox1.ListIndex + x 'où x=numéro de première ligne de ta liste
te donne la ligne de ta correspondant au choix dans la combobox

ensuite, libre à toi de pointer :
Sheets("Liste").cells(Lig,1)
ou
Sheets("Liste").Range("A" & Lig)
ou
...


Bon Dimanche

Rai

"Hervé" a écrit dans le message de news:
e%23xXiD7%
Bonjour
J'ai un combobox sur un userform et une liste de nom dans une feuille
[Liste!A2:A50] je souhaite que lorsque je clic sur les éléments de mon
comboxbox cela s'index sur les éléments de ma liste :
Ex : je clique sur sur le 2ème élément de la liste du combobox,cela
pointe
sur le 2 élément de la liste sur la feuille.
Merci beaucoup
Hervé











Avatar
AV
.......mais est-il possible que cela pointe sur la
feuille sans sélectionner celle-ci ?


Je suppose que tu veux que ça ne le fasse qu'au moment de la sélection
ultérieure de la feuille (?)
Si oui, une soluce..

Dans le module de l'UserForm :
Private Sub ComboBox1_Change()
ActiveWorkbook.Names.Add Name:="x", RefersTo:=ComboBox1.ListIndex + 2
End Sub

Dans le module de la feuille "Liste"

Private Sub Worksheet_Activate()
Cells([x], 1).Select
End Sub

AV

Avatar
Hervé
Merci beaucoup AV
Impecc
Hervé



"AV" a écrit dans le message de news:
e4trrG9%
.......mais est-il possible que cela pointe sur la
feuille sans sélectionner celle-ci ?


Je suppose que tu veux que ça ne le fasse qu'au moment de la sélection
ultérieure de la feuille (?)
Si oui, une soluce..

Dans le module de l'UserForm :
Private Sub ComboBox1_Change()
ActiveWorkbook.Names.Add Name:="x", RefersTo:=ComboBox1.ListIndex + 2
End Sub

Dans le module de la feuille "Liste"

Private Sub Worksheet_Activate()
Cells([x], 1).Select
End Sub

AV