Correspondance entre nom et N° de colonne

  • Initiateur de la discussion Initiateur de la discussion marmotte18
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

marmotte18

XLDnaute Impliqué
Bonjour,

Je cherche à trouver une meilleure solution pour établir la correspondance entre le N° de colonne et son nom, d'autant que je souhaiterais aller jusqu'à la colonne 256 (IV) :

Code:
For Colonne = 1 To ColSup
 
    If Colonne = 1 Then Lettre = "A"
    If Colonne = 2 Then Lettre = "B"
    If Colonne = 3 Then Lettre = "C"
    If Colonne = 4 Then Lettre = "D"
    If Colonne = 5 Then Lettre = "E"
    If Colonne = 6 Then Lettre = "F"
    If Colonne > 6 Then MsgBox "Trop de tabulations !": Exit Sub
 
    Plage = Lettre & 65536
    LigneSup = Range(Plage).End(xlUp).Row 'Dernière ligne remplie de la colonne
Next Colonne

Je vous ai joint l'intégralité de mon code.

Merci par avance
 

Pièces jointes

Dernière édition:
Re : Correspondance entre nom et N° de colonne

bonjour marmotte

teste ceci

Code:
Function lettre_col(numero)
  lettre_col = Replace(Cells(1, numero).Address(0, 0), "1", "")
End Function
Sub test()
 MsgBox (lettre_col(1))
 MsgBox (lettre_col(256))
End Sub

Ps: je jette un oeil sur ton code
Et voici ton fichier
 

Pièces jointes

Dernière édition:
Re : Correspondance entre nom et N° de colonne

Bonjour le fil, bonjour le forum,

J'ai enfin compris, du moins le crois-je, la fonction Split. On pourrait peut-être faire comme ça :
Code:
lettre_col = Split(Cells(1, numero).Address, "$")
MsgBox lettre_col(1)
 
Re : Correspondance entre nom et N° de colonne

Re

😱😱

Mais je viens de la tester sur Excel 2010 , et elle fonctionne.

Je t'en informe donc illico presto en espérant que cella rachètera ma faute.

PS: tu remarqueras que je n'ai pas insinuer que ta fonction ne fonctionnait pas sous Excel 2007.
 
Re : Correspondance entre nom et N° de colonne

Bonsoir à tous
Code:
[COLOR="DarkSlateGray"][B]Function ANum$(n&)
   Do While n > 0
      ANum = Chr(((n - 1) Mod 26) + 65) & ANum
      n = (n - 1) \ 26
   Loop
End Function[/B][/COLOR]
ANum(1) renvoie A.
ANum(1024) renvoie AMJ.
ANum(2147483647) renvoie FXSHRXW.​
ROGER2327
#3507


Mercredi 4 Merdre 137 (Nativité de Saint Henri Rousseau, douanier, SQ)
2 Prairial An CCXVIII
2010-W20-5T23:53:57Z
 
Dernière édition:
Re : Correspondance entre nom et N° de colonne

Suite...
... et la fonction réciproque :
Code:
[COLOR="DarkSlateGray"][B]Function NumA(s$)
Dim vl#, i&
   For i = 1 To Len(s)
      If Mid$(s, i, 1) Like "[A-Z]" Then vl = vl * 26 + Asc(Mid$(s, i, 1)) - 64
   Next i
   NumA = IIf(vl > 0, vl, "")
End Function[/B][/COLOR]
=NumA("A") renvoie 1.
=NumA("AMJ") renvoie 1024.
=NumA("FXSHRXW") renvoie 2147483647.​
ROGER2327
#3508


Jeudi 5 Merdre 137 (Saint Crouducul, troupier, SQ)
3 Prairial An CCXVIII
2010-W20-6T00:17:02Z
 
Re : Correspondance entre nom et N° de colonne

Re

Salut à tous

Pour la reciproque de ma fonction c'est:

Code:
Function num_col(lettre)
 num_col = Range(lettre & 1).Column
End Function

A noter que l'on ne va pas jusqu'a FXSHRXW ce qui ne parait pas très utile puisque 2007 est limité a XFD
 
Re : Correspondance entre nom et N° de colonne

Bonjour pierrejean
Re

Salut à tous

Pour la reciproque de ma fonction c'est:

Code:
Function num_col(lettre)
 num_col = Range(lettre & 1).Column
End Function

A noter que l'on ne va pas jusqu'a FXSHRXW ce qui ne parait pas très utile puisque 2007 est limité a XFD
Il est vrai que je me suis un peu laissé entraîner par le sujet !
Ma réponse n'est pas vraiment adaptée au cas à traiter (sauf à anticiper sur une éventuelle version 2327 d'Excel qui pourra peut-être gérer 2_147_483_647 colonnes).
Faut rigoler...
Pour rester sérieux : il vaut mieux utiliser ici une solution comme la vôtre, bien sûr.
Je laisse cependant ma proposition dans la discussion : elle dépannera peut-être dans d'autres situations.​
Bonne fin de semaine.
ROGER2327
#3510


Jeudi 5 Merdre 137 (Saint Crouducul, troupier, SQ)
3 Prairial An CCXVIII
2010-W20-6T08:51:56Z
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
411
Retour