Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Mettre une plage nommée dans le RowSource d'un Combo

4 réponses
Avatar
merguez07
Bonjour à tous,
voilà dans mon tableau excel j'ai nommé 3 plages dynamique de donnée

La plage 1 qu'on va appeler "PLAGE1" ressemble à ça
=DECALER(Configuration!$F$5;0;0;NBVAL(Configuration!$F:$F)-2;1)

il s'agit d'une plage classique qui contient dans une colonne un certain
nombre de cellules

Lorsque je met sur une form un combobox et que j'affecte PLAGE1 au
rowsource j'ai bien ma liste de données que contient PLAGE1. Donc pas de
Pb avec PLAGE1


PLAGE2 ressemble à ça
=DECALER('Type de constats'!$C$15;0;0;1;NBVAL('Type de constats'!$15:$15)-1)
C'est pareil que PLAGE 1 mais sur une seule ligne.
Si je met dans mon rowsource PLAGE2 et bien je n'ai que la première
valeur qui s'affiche. C'est normal il faudrait que PLAGE2 soit en
colonne. J'ai essayé de passer par une plage intermediaire
PLAGE2T=Transpose(PLAGE2) mais ça ne marche pas. Donc je bloque.

PLAGE3 ressemble à ça
=DECALER(INDEX(PLAGE2;0;EQUIV("SURVEILLANCE";PLAGE2;0));1;0;NBVAL(DECALER('Type
de constats'!$C$15;1;EQUIV("SURVEILLANCE";PLAGE2;0)-1;14)))
Là rowsource ne veut même pas en entendre parler. Je bloque aussi

Y a t il à vos yeux une astuce pour affecter rowsource aux plage 2 et 3
ou dois abandonner et remplir ma combo item par item .

merci d'avance

4 réponses

Avatar
isabelle
bonjour merguez,

Dim plg2T()
ReDim Preserve plg2T(Application.CountA([plg2]))
For i = 0 To Application.CountA([plg2]) - 1
plg2T(i) = Range("plg2").Item(i + 1)
Next
UserForm1.ComboBox1.List = plg2T

isabelle

Le 2011-02-28 04:39, merguez07 a écrit :
Bonjour à tous,
voilà dans mon tableau excel j'ai nommé 3 plages dynamique de donnée

La plage 1 qu'on va appeler "PLAGE1" ressemble à ça
ÞCALER(Configuration!$F$5;0;0;NBVAL(Configuration!$F:$F)-2;1)

il s'agit d'une plage classique qui contient dans une colonne un
certain nombre de cellules

Lorsque je met sur une form un combobox et que j'affecte PLAGE1 au
rowsource j'ai bien ma liste de données que contient PLAGE1. Donc pas
de Pb avec PLAGE1


PLAGE2 ressemble à ça
ÞCALER('Type de constats'!$C$15;0;0;1;NBVAL('Type de
constats'!$15:$15)-1)
C'est pareil que PLAGE 1 mais sur une seule ligne.
Si je met dans mon rowsource PLAGE2 et bien je n'ai que la première
valeur qui s'affiche. C'est normal il faudrait que PLAGE2 soit en
colonne. J'ai essayé de passer par une plage intermediaire
PLAGE2T=Transpose(PLAGE2) mais ça ne marche pas. Donc je bloque.

PLAGE3 ressemble à ça
ÞCALER(INDEX(PLAGE2;0;EQUIV("SURVEILLANCE";PLAGE2;0));1;0;NBVAL(DECALER('Type
de constats'!$C$15;1;EQUIV("SURVEILLANCE";PLAGE2;0)-1;14)))
Là rowsource ne veut même pas en entendre parler. Je bloque aussi

Y a t il à vos yeux une astuce pour affecter rowsource aux plage 2 et
3 ou dois abandonner et remplir ma combo item par item .

merci d'avance
Avatar
isabelle
je me suis compliqué la vie pour rien, cette ligne suffi.

UserForm1.ComboBox1.List = Application.Transpose([plg2])

isabelle

Le 2011-02-28 08:17, isabelle a écrit :
bonjour merguez,

Dim plg2T()
ReDim Preserve plg2T(Application.CountA([plg2]))
For i = 0 To Application.CountA([plg2]) - 1
plg2T(i) = Range("plg2").Item(i + 1)
Next
UserForm1.ComboBox1.List = plg2T

isabelle

Le 2011-02-28 04:39, merguez07 a écrit :
Bonjour à tous,
voilà dans mon tableau excel j'ai nommé 3 plages dynamique de donnée

La plage 1 qu'on va appeler "PLAGE1" ressemble à ça
ÞCALER(Configuration!$F$5;0;0;NBVAL(Configuration!$F:$F)-2;1)

il s'agit d'une plage classique qui contient dans une colonne un
certain nombre de cellules

Lorsque je met sur une form un combobox et que j'affecte PLAGE1 au
rowsource j'ai bien ma liste de données que contient PLAGE1. Donc pas
de Pb avec PLAGE1


PLAGE2 ressemble à ça
ÞCALER('Type de constats'!$C$15;0;0;1;NBVAL('Type de
constats'!$15:$15)-1)
C'est pareil que PLAGE 1 mais sur une seule ligne.
Si je met dans mon rowsource PLAGE2 et bien je n'ai que la première
valeur qui s'affiche. C'est normal il faudrait que PLAGE2 soit en
colonne. J'ai essayé de passer par une plage intermediaire
PLAGE2T=Transpose(PLAGE2) mais ça ne marche pas. Donc je bloque.

PLAGE3 ressemble à ça
ÞCALER(INDEX(PLAGE2;0;EQUIV("SURVEILLANCE";PLAGE2;0));1;0;NBVAL(DECALER('Type
de constats'!$C$15;1;EQUIV("SURVEILLANCE";PLAGE2;0)-1;14)))
Là rowsource ne veut même pas en entendre parler. Je bloque aussi

Y a t il à vos yeux une astuce pour affecter rowsource aux plage 2 et
3 ou dois abandonner et remplir ma combo item par item .

merci d'avance
Avatar
JB
Bonjour,

Me.ComboBox1.List = Application.Transpose([plage])

JB
http://boisgontierjacques.free.fr/

On 28 fév, 10:39, merguez07 wrote:
Bonjour tous,
voil dans mon tableau excel j'ai nomm 3 plages dynamique de donn e

La plage 1 qu'on va appeler "PLAGE1" ressemble a
ÞCALER(Configuration!$F$5;0;0;NBVAL(Configuration!$F:$F)-2;1)

il s'agit d'une plage classique qui contient dans une colonne un certain
nombre de cellules

Lorsque je met sur une form un combobox et que j'affecte PLAGE1 au
rowsource j'ai bien ma liste de donn es que contient PLAGE1. Donc pas de
Pb avec PLAGE1

PLAGE2 ressemble a
ÞCALER('Type de constats'!$C$15;0;0;1;NBVAL('Type de constats'!$15:$1 5)-1)
C'est pareil que PLAGE 1 mais sur une seule ligne.
Si je met dans mon rowsource PLAGE2 et bien je n'ai que la premi re
valeur qui s'affiche. C'est normal il faudrait que PLAGE2 soit en
colonne. J'ai essay de passer par une plage intermediaire
PLAGE2T=Transpose(PLAGE2) mais a ne marche pas. Donc je bloque.

PLAGE3 ressemble a
ÞCALER(INDEX(PLAGE2;0;EQUIV("SURVEILLANCE";PLAGE2;0));1;0;NBVAL(DECAL ER('­Type
de constats'!$C$15;1;EQUIV("SURVEILLANCE";PLAGE2;0)-1;14)))
L rowsource ne veut m me pas en entendre parler. Je bloque aussi

Y a t il vos yeux une astuce pour affecter rowsource aux plage 2 et 3
ou dois abandonner et remplir ma combo item par item .

merci d'avance
Avatar
merguez07
Merci isabelle, t'es géniale


Le 28.02.2011 14:28, isabelle a écrit :
je me suis compliqué la vie pour rien, cette ligne suffi.

UserForm1.ComboBox1.List = Application.Transpose([plg2])

isabelle

Le 2011-02-28 08:17, isabelle a écrit :
bonjour merguez,

Dim plg2T()
ReDim Preserve plg2T(Application.CountA([plg2]))
For i = 0 To Application.CountA([plg2]) - 1
plg2T(i) = Range("plg2").Item(i + 1)
Next
UserForm1.ComboBox1.List = plg2T

isabelle

Le 2011-02-28 04:39, merguez07 a écrit :
Bonjour à tous,
voilà dans mon tableau excel j'ai nommé 3 plages dynamique de donnée

La plage 1 qu'on va appeler "PLAGE1" ressemble à ça
ÞCALER(Configuration!$F$5;0;0;NBVAL(Configuration!$F:$F)-2;1)

il s'agit d'une plage classique qui contient dans une colonne un
certain nombre de cellules

Lorsque je met sur une form un combobox et que j'affecte PLAGE1 au
rowsource j'ai bien ma liste de données que contient PLAGE1. Donc pas
de Pb avec PLAGE1


PLAGE2 ressemble à ça
ÞCALER('Type de constats'!$C$15;0;0;1;NBVAL('Type de
constats'!$15:$15)-1)
C'est pareil que PLAGE 1 mais sur une seule ligne.
Si je met dans mon rowsource PLAGE2 et bien je n'ai que la première
valeur qui s'affiche. C'est normal il faudrait que PLAGE2 soit en
colonne. J'ai essayé de passer par une plage intermediaire
PLAGE2T=Transpose(PLAGE2) mais ça ne marche pas. Donc je bloque.

PLAGE3 ressemble à ça
ÞCALER(INDEX(PLAGE2;0;EQUIV("SURVEILLANCE";PLAGE2;0));1;0;NBVAL(DECALER('Type
de constats'!$C$15;1;EQUIV("SURVEILLANCE";PLAGE2;0)-1;14)))
Là rowsource ne veut même pas en entendre parler. Je bloque aussi

Y a t il à vos yeux une astuce pour affecter rowsource aux plage 2 et
3 ou dois abandonner et remplir ma combo item par item .

merci d'avance