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

Changer un numéro de colonne en lettre(s)

17 réponses
Avatar
Tatanka
Bonjour, Bonjour,

J'ai une fonction qui transforme le numéro
d'une colonne en lettre(s) :

Function ColonneA(n)
Set p1 = Application.Caller
Set p2 = Cells(p1.Row, n)
r = p2.Address(True, False)
r = Left(r, InStr(1, r, "$") - 1)
ColonneA = r
End Function

Je cherche maintenant une formule Excel qui
donnerait le même résultat. Il me semble que
j'ai déjà vu une telle formule sur ce site.
Vous avez une idée ?

Serge

10 réponses

1 2
Avatar
Tatanka
J'en ai trouvé une en « traduisant » la fonction en formule.
En nommant « n » une celllule contenant le numéro d'une colonne,
cette formule :
=GAUCHE(ADRESSE(LIGNE();n;2);CHERCHE("$";ADRESSE(LIGNE();n;2);1)-1)
est équivalente à ColonneA(n).
Pourrait-on obtenir la même chose autrement ?

Serge

"Tatanka" a écrit dans le message de news:
Bonjour, Bonjour,

J'ai une fonction qui transforme le numéro
d'une colonne en lettre(s) :

Function ColonneA(n)
Set p1 = Application.Caller
Set p2 = Cells(p1.Row, n)
r = p2.Address(True, False)
r = Left(r, InStr(1, r, "$") - 1)
ColonneA = r
End Function

Je cherche maintenant une formule Excel qui
donnerait le même résultat. Il me semble que
j'ai déjà vu une telle formule sur ce site.
Vous avez une idée ?

Serge



Avatar
JB
Bonjour,

A1 contient le no:

=SUBSTITUE(SUBSTITUE(ADRESSE(1;A1);"$";"");"1";"")

JB

On 18 fév, 17:22, "Tatanka" wrote:
Bonjour, Bonjour,

J'ai une fonction qui transforme le numéro
d'une colonne en lettre(s) :

Function ColonneA(n)
    Set p1 = Application.Caller
    Set p2 = Cells(p1.Row, n)
    r = p2.Address(True, False)
    r = Left(r, InStr(1, r, "$") - 1)
    ColonneA = r
End Function

Je cherche maintenant une formule Excel qui
donnerait le même résultat. Il me semble que
j'ai déjà vu une telle formule sur ce site.
Vous avez une idée ?

Serge


Avatar
isabelle
bonjour Serge,

=SI(COLONNE()>26;CAR(ENT((COLONNE()-1)/26)+64);"")&CAR(MOD((COLONNE()-1);26)+65)

isabelle

Bonjour, Bonjour,

J'ai une fonction qui transforme le numéro
d'une colonne en lettre(s) :

Function ColonneA(n)
Set p1 = Application.Caller
Set p2 = Cells(p1.Row, n)
r = p2.Address(True, False)
r = Left(r, InStr(1, r, "$") - 1)
ColonneA = r
End Function

Je cherche maintenant une formule Excel qui
donnerait le même résultat. Il me semble que
j'ai déjà vu une telle formule sur ce site.
Vous avez une idée ?

Serge




Avatar
isabelle
ou bien comme la tienne sans le n :

=GAUCHE(ADRESSE(LIGNE();COLONNE();2);CHERCHE("$";ADRESSE(LIGNE();COLONNE();2);1)-1)

isabelle

J'en ai trouvé une en « traduisant » la fonction en formule.
En nommant « n » une celllule contenant le numéro d'une colonne,
cette formule :
=GAUCHE(ADRESSE(LIGNE();n;2);CHERCHE("$";ADRESSE(LIGNE();n;2);1)-1)
est équivalente à ColonneA(n).
Pourrait-on obtenir la même chose autrement ?

Serge

"Tatanka" a écrit dans le message de news:
Bonjour, Bonjour,

J'ai une fonction qui transforme le numéro
d'une colonne en lettre(s) :

Function ColonneA(n)
Set p1 = Application.Caller
Set p2 = Cells(p1.Row, n)
r = p2.Address(True, False)
r = Left(r, InStr(1, r, "$") - 1)
ColonneA = r
End Function

Je cherche maintenant une formule Excel qui
donnerait le même résultat. Il me semble que
j'ai déjà vu une telle formule sur ce site.
Vous avez une idée ?

Serge







Avatar
Tatanka
Salut JB,

Yep! 18 caractères de moins.

Serge

"JB" a écrit dans le message de news:
Bonjour,

A1 contient le no:

=SUBSTITUE(SUBSTITUE(ADRESSE(1;A1);"$";"");"1";"")

JB

On 18 fév, 17:22, "Tatanka" wrote:
Bonjour, Bonjour,

J'ai une fonction qui transforme le numéro
d'une colonne en lettre(s) :

Function ColonneA(n)
Set p1 = Application.Caller
Set p2 = Cells(p1.Row, n)
r = p2.Address(True, False)
r = Left(r, InStr(1, r, "$") - 1)
ColonneA = r
End Function

Je cherche maintenant une formule Excel qui
donnerait le même résultat. Il me semble que
j'ai déjà vu une telle formule sur ce site.
Vous avez une idée ?

Serge


Avatar
JB
En VBA:

Function ColLettre(col)
ColLettre = Split(Cells(1, col).Address, "$")(1)
End Function

JB

On 18 fév, 17:46, JB wrote:
Bonjour,

A1 contient le no:

=SUBSTITUE(SUBSTITUE(ADRESSE(1;A1);"$";"");"1";"")

JB

On 18 fév, 17:22, "Tatanka" wrote:



Bonjour, Bonjour,

J'ai une fonction qui transforme le numéro
d'une colonne en lettre(s) :

Function ColonneA(n)
    Set p1 = Application.Caller
    Set p2 = Cells(p1.Row, n)
    r = p2.Address(True, False)
    r = Left(r, InStr(1, r, "$") - 1)
    ColonneA = r
End Function

Je cherche maintenant une formule Excel qui
donnerait le même résultat. Il me semble que
j'ai déjà vu une telle formule sur ce site.
Vous avez une idée ?

Serge- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Avatar
Tatanka
Bonjour Isabelle,

C'est bien celle-là que j'ai déjà vue.
Et si j'entre le nom d'une colonne en lettre(s) dans une cellule
nommée « col », cette formule la transforme en nombre.

=COLONNE(INDIRECT(col&LIGNE()))

Bonne journée,

Serge


"isabelle" a écrit dans le message de news:
bonjour Serge,

=SI(COLONNE()>26;CAR(ENT((COLONNE()-1)/26)+64);"")&CAR(MOD((COLONNE()-1);26)+65)

isabelle

Bonjour, Bonjour,

J'ai une fonction qui transforme le numéro
d'une colonne en lettre(s) :

Function ColonneA(n)
Set p1 = Application.Caller
Set p2 = Cells(p1.Row, n)
r = p2.Address(True, False)
r = Left(r, InStr(1, r, "$") - 1)
ColonneA = r
End Function

Je cherche maintenant une formule Excel qui
donnerait le même résultat. Il me semble que
j'ai déjà vu une telle formule sur ce site.
Vous avez une idée ?

Serge




Avatar
Tatanka
À bien y penser, moé lâ, j'abandonne les concours de brièveté ;-)

Serge

"JB" a écrit dans le message de news:
En VBA:

Function ColLettre(col)
ColLettre = Split(Cells(1, col).Address, "$")(1)
End Function

JB

On 18 fév, 17:46, JB wrote:
Bonjour,

A1 contient le no:

=SUBSTITUE(SUBSTITUE(ADRESSE(1;A1);"$";"");"1";"")

JB

On 18 fév, 17:22, "Tatanka" wrote:



Bonjour, Bonjour,

J'ai une fonction qui transforme le numéro
d'une colonne en lettre(s) :

Function ColonneA(n)
Set p1 = Application.Caller
Set p2 = Cells(p1.Row, n)
r = p2.Address(True, False)
r = Left(r, InStr(1, r, "$") - 1)
ColonneA = r
End Function

Je cherche maintenant une formule Excel qui
donnerait le même résultat. Il me semble que
j'ai déjà vu une telle formule sur ce site.
Vous avez une idée ?

Serge- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Avatar
ChrisV
Salut Serge,

Tu pourrais aussi utiliser:
=COLONNE(INDIRECT(col&1))


ChrisV


"Tatanka" a écrit dans le message de news:
OUxFE%
Bonjour Isabelle,

C'est bien celle-là que j'ai déjà vue.
Et si j'entre le nom d'une colonne en lettre(s) dans une cellule
nommée « col », cette formule la transforme en nombre.

=COLONNE(INDIRECT(col&LIGNE()))

Bonne journée,

Serge


"isabelle" a écrit dans le message de news:

bonjour Serge,

=SI(COLONNE()>26;CAR(ENT((COLONNE()-1)/26)+64);"")&CAR(MOD((COLONNE()-1);26)+65)

isabelle

Bonjour, Bonjour,

J'ai une fonction qui transforme le numéro
d'une colonne en lettre(s) :

Function ColonneA(n)
Set p1 = Application.Caller
Set p2 = Cells(p1.Row, n)
r = p2.Address(True, False)
r = Left(r, InStr(1, r, "$") - 1)
ColonneA = r
End Function

Je cherche maintenant une formule Excel qui
donnerait le même résultat. Il me semble que
j'ai déjà vu une telle formule sur ce site.
Vous avez une idée ?

Serge








Avatar
ChrisV
Ou encore... ;-)

=SUBSTITUE(ADRESSE(1;A1;4);"1";"")


ChrisV


"Tatanka" a écrit dans le message de news:
%
Salut JB,

Yep! 18 caractères de moins.

Serge

"JB" a écrit dans le message de news:

Bonjour,

A1 contient le no:

=SUBSTITUE(SUBSTITUE(ADRESSE(1;A1);"$";"");"1";"")

JB

On 18 fév, 17:22, "Tatanka" wrote:
Bonjour, Bonjour,

J'ai une fonction qui transforme le numéro
d'une colonne en lettre(s) :

Function ColonneA(n)
Set p1 = Application.Caller
Set p2 = Cells(p1.Row, n)
r = p2.Address(True, False)
r = Left(r, InStr(1, r, "$") - 1)
ColonneA = r
End Function

Je cherche maintenant une formule Excel qui
donnerait le même résultat. Il me semble que
j'ai déjà vu une telle formule sur ce site.
Vous avez une idée ?

Serge






1 2