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

vba numéro de colonne d'un nom situé dans une cellule

8 réponses
Avatar
j-pascal
Bonjour,

Ceci fonctionne :

{=MAX((MaPlage="titi")*COLONNE(MaPlage))}

En supposant que MaPlage soit égale à "C9:G21",
cela ne fonctionne plus :

{=MAX((range("C9:G21")="titi")*COLONNE(range("C9:G21")))}

Merci pour votre aide,

JP

PS: en fait, je souhaite récupérer le numéro de colonne d'un nom situé
dans une plage et cela pour plusieurs feuilles.
Je peux nommer MaPlage, mais s'agissant de plusieurs feuilles, je
crains que la macro ne sache plus très bien de quelle (Ma)Plage il
s'agisse !

8 réponses

Avatar
isabelle
bonjour ,

x = Range("MaPlage").Column

isabelle

j-pascal a écrit :
Bonjour,

Ceci fonctionne :

{=MAX((MaPlage="titi")*COLONNE(MaPlage))}

En supposant que MaPlage soit égale à "C9:G21",
cela ne fonctionne plus :

{=MAX((range("C9:G21")="titi")*COLONNE(range("C9:G21")))}

Merci pour votre aide,

JP

PS: en fait, je souhaite récupérer le numéro de colonne d'un nom situé
dans une plage et cela pour plusieurs feuilles.
Je peux nommer MaPlage, mais s'agissant de plusieurs feuilles, je
crains que la macro ne sache plus très bien de quelle (Ma)Plage il
s'agisse !




Avatar
j-pascal
bonjour,

Désolé, je ne comprends pas !
A priori, ta formule renvoit le numéro de la colonne la plus à gauche
de MaPlage (?).

Peut-être me suis-je mal expliqué.
J'ai une plage nommée "MaPlage". Dans cette plage, il y a un nom
"titi".
Je souhaite récupérer le numéro de colonne de la cellule dans laquelle
se trouve "titi".

PS : as-tu une réponse à ma première question
(.."range("C9:G21")="titi"..) ?

@+ ?

JP

bonjour ,

x = Range("MaPlage").Column

isabelle

j-pascal a écrit :
Bonjour,

Ceci fonctionne :

{=MAX((MaPlage="titi")*COLONNE(MaPlage))}

En supposant que MaPlage soit égale à "C9:G21",
cela ne fonctionne plus :

{=MAX((range("C9:G21")="titi")*COLONNE(range("C9:G21")))}

Merci pour votre aide,

JP

PS: en fait, je souhaite récupérer le numéro de colonne d'un nom situé dans
une plage et cela pour plusieurs feuilles.
Je peux nommer MaPlage, mais s'agissant de plusieurs feuilles, je crains
que la macro ne sache plus très bien de quelle (Ma)Plage il s'agisse !




Avatar
Jacky
Bonsoir

Si c'est pour une formule dans une feuille, le range est inutile (pour Vba)

L'équivalant de ceci
=MAX((maplage="titi")*COLONNE(maplage))
pour une plage de "C9:G21", est cela
=MAX((C9:G21="titi")*COLONNE(C9:G21))

Validation matricielle dans les 2 cas.
--
Salutations
JJ


"j-pascal" a écrit dans le message de news:

Bonjour,

Ceci fonctionne :

{=MAX((MaPlage="titi")*COLONNE(MaPlage))}

En supposant que MaPlage soit égale à "C9:G21",
cela ne fonctionne plus :

{=MAX((range("C9:G21")="titi")*COLONNE(range("C9:G21")))}

Merci pour votre aide,

JP

PS: en fait, je souhaite récupérer le numéro de colonne d'un nom situé
dans une plage et cela pour plusieurs feuilles.
Je peux nommer MaPlage, mais s'agissant de plusieurs feuilles, je crains
que la macro ne sache plus très bien de quelle (Ma)Plage il s'agisse !




Avatar
Daniel.C
Bonjour.
Var = Evaluate("MAX((" & Range("C9:G21").Address & _
"=""titi"")*column(" & Range("C9:G21").Address & "))")
Cordialement.
Daniel

Bonjour,

Ceci fonctionne :

{=MAX((MaPlage="titi")*COLONNE(MaPlage))}

En supposant que MaPlage soit égale à "C9:G21",
cela ne fonctionne plus :

{=MAX((range("C9:G21")="titi")*COLONNE(range("C9:G21")))}

Merci pour votre aide,

JP

PS: en fait, je souhaite récupérer le numéro de colonne d'un nom situé dans
une plage et cela pour plusieurs feuilles.
Je peux nommer MaPlage, mais s'agissant de plusieurs feuilles, je crains que
la macro ne sache plus très bien de quelle (Ma)Plage il s'agisse !


Avatar
j-pascal
Bonsoir Jacky,

Où ai-je la tête ??!!
Merci de m'avoir remis sur la voie.
Bon we,
JP
Bonsoir

Si c'est pour une formule dans une feuille, le range est inutile (pour Vba)

L'équivalant de ceci
=MAX((maplage="titi")*COLONNE(maplage))
pour une plage de "C9:G21", est cela
=MAX((C9:G21="titi")*COLONNE(C9:G21))

Validation matricielle dans les 2 cas.
--
Salutations
JJ


"j-pascal" a écrit dans le message de news:

Bonjour,

Ceci fonctionne :

{=MAX((MaPlage="titi")*COLONNE(MaPlage))}

En supposant que MaPlage soit égale à "C9:G21",
cela ne fonctionne plus :

{=MAX((range("C9:G21")="titi")*COLONNE(range("C9:G21")))}

Merci pour votre aide,

JP

PS: en fait, je souhaite récupérer le numéro de colonne d'un nom situé dans
une plage et cela pour plusieurs feuilles.
Je peux nommer MaPlage, mais s'agissant de plusieurs feuilles, je crains
que la macro ne sache plus très bien de quelle (Ma)Plage il s'agisse !






Avatar
j-pascal
Re,

Avec Debug.Print j'obtiens : y =MAX((7:7="Signature")*COLUMN(7:7))
et pourtant j'ai une erreur de syntaxe avec les ":" en surbrillance !
Suis-je encore à côté de mes "pompes" ?
@+ ?
JP
PS : en fait je n'ai besoin que d'une recherche sur la ligne 7 (j'ai
essayé en ajoutant "ROW" ...) ; et je souhaite récupérer cette valeur
dans la variable "y".
Bonsoir

Si c'est pour une formule dans une feuille, le range est inutile (pour Vba)

L'équivalant de ceci
=MAX((maplage="titi")*COLONNE(maplage))
pour une plage de "C9:G21", est cela
=MAX((C9:G21="titi")*COLONNE(C9:G21))

Validation matricielle dans les 2 cas.
--
Salutations
JJ


"j-pascal" a écrit dans le message de news:

Bonjour,

Ceci fonctionne :

{=MAX((MaPlage="titi")*COLONNE(MaPlage))}

En supposant que MaPlage soit égale à "C9:G21",
cela ne fonctionne plus :

{=MAX((range("C9:G21")="titi")*COLONNE(range("C9:G21")))}

Merci pour votre aide,

JP

PS: en fait, je souhaite récupérer le numéro de colonne d'un nom situé dans
une plage et cela pour plusieurs feuilles.
Je peux nommer MaPlage, mais s'agissant de plusieurs feuilles, je crains
que la macro ne sache plus très bien de quelle (Ma)Plage il s'agisse !






Avatar
j-pascal
Bonsoir Daniel,

C'est parfait ! Merci ! Mais comme je le disais à Jacky, je suis un peu
perplexe quant au résultat que me renvoit le Debug.Print ... (pour une
fois que je me faisais un plaisir de le mettre en pratique !)
JP
Bonjour.
Var = Evaluate("MAX((" & Range("C9:G21").Address & _
"=""titi"")*column(" & Range("C9:G21").Address & "))")
Cordialement.
Daniel

Bonjour,

Ceci fonctionne :

{=MAX((MaPlage="titi")*COLONNE(MaPlage))}

En supposant que MaPlage soit égale à "C9:G21",
cela ne fonctionne plus :

{=MAX((range("C9:G21")="titi")*COLONNE(range("C9:G21")))}

Merci pour votre aide,

JP

PS: en fait, je souhaite récupérer le numéro de colonne d'un nom situé dans
une plage et cela pour plusieurs feuilles.
Je peux nommer MaPlage, mais s'agissant de plusieurs feuilles, je crains
que la macro ne sache plus très bien de quelle (Ma)Plage il s'agisse !




Avatar
Jacky
Re...
Où ai-je la tête ??!!


Mais non, je n"ai pas vu que tu voulais le resultat en vba
Oublie ma réponse...
--
Salutations
JJ


"j-pascal" a écrit dans le message de news:

Bonsoir Jacky,

Où ai-je la tête ??!!
Merci de m'avoir remis sur la voie.
Bon we,
JP
Bonsoir

Si c'est pour une formule dans une feuille, le range est inutile (pour
Vba)

L'équivalant de ceci
=MAX((maplage="titi")*COLONNE(maplage))
pour une plage de "C9:G21", est cela
=MAX((C9:G21="titi")*COLONNE(C9:G21))

Validation matricielle dans les 2 cas.
--
Salutations
JJ


"j-pascal" a écrit dans le message de news:

Bonjour,

Ceci fonctionne :

{=MAX((MaPlage="titi")*COLONNE(MaPlage))}

En supposant que MaPlage soit égale à "C9:G21",
cela ne fonctionne plus :

{=MAX((range("C9:G21")="titi")*COLONNE(range("C9:G21")))}

Merci pour votre aide,

JP

PS: en fait, je souhaite récupérer le numéro de colonne d'un nom situé
dans une plage et cela pour plusieurs feuilles.
Je peux nommer MaPlage, mais s'agissant de plusieurs feuilles, je crains
que la macro ne sache plus très bien de quelle (Ma)Plage il s'agisse !