Référence à une colonne par sa lettre

Unusual

XLDnaute Nouveau
Dans une macro, comment fait-on référence à une colonne par son texte (sa lettre en général)...ou y a-t-il une conversion du nom de colonne en sa valeur indicée ?

Ex : référence à une colonne "K" (sauf qu'on ne sait pas la valeur à l'avance)

worksheets("toto").cells(1, ValeurColonne("K")).Value = ...
 

pierrejean

XLDnaute Barbatruc
Re : Référence à une colonne par sa lettre

bonjour unusual

voici une fonction qui determine le numero de la colonne a partir de son appelation litterale

Code:
Function numcol(lettre As String)
lettre = UCase(lettre)
If Len(lettre) = 1 Then
numcol = Asc(lettre) - 64
Else
numcol = (Asc(Left(lettre, 1)) - 64) * 26 + Asc(Right(lettre, 1)) - 64
End If
End Function

ensuite le numero de colonne s'ecrit
numcol(salettre)
salettre etant le string contenant la lettre
 

pierrejean

XLDnaute Barbatruc
Re : Référence à une colonne par sa lettre

re

Si hervé ne m'avait pas magistralement court-circuité , j'aurais proposé la fonction suivante:

Code:
Function lettrecol(num As Integer)
Dim x as Integer
If num < 27 Then
lettrecol = Chr(num + 64)
Else
x = num Mod 26
lettrecol = Chr(Int(num / 26) + 64) & Chr(x + 64)
End If
End Function
 

Discussions similaires

Statistiques des forums

Discussions
312 439
Messages
2 088 440
Membres
103 850
dernier inscrit
Eltactico