Cette fonction transforme la colonne d'une cellule soit en caractère, soit en chiffre, suivant ce qu'on lui envoie.
Source / Exemple :
Function xlColumnValue(strColumnIndex As String) As String
' ------------------------------------------------------------------------------
'
' These function changes the Column Number of a cell in character(s)
' or vice versa.
'
' Return: Column Number or Character
'
' ------------------------------------------------------------------------------
strColumnIndex = ucase(strColumnIndex)
Select Case Asc(strColumnIndex)
Case 36 ' Absolute Column
xlColumnValue = xlColumnValue(Mid(strColumnIndex, 2, _
InStr(2, strColumnIndex, "$") - 2))
Case 48 ' 0 in first character
MsgBox "The number 0 is invalid.", vbExclamation, "Null Denied"
Case 49 To 57 ' Number to Char
If strColumnIndex < 27 Then
xlColumnValue = Chr(strColumnIndex + 65 - 1)
Else
If strColumnIndex Mod 26 <> 0 Then
xlColumnValue = Chr(strColumnIndex \ 26 + 65 - 1) + _
Chr(strColumnIndex Mod 26 + 65 - 1)
Else
xlColumnValue = Chr(strColumnIndex \ 26 + 65 - 2) + _
Chr(90)
End If
End If
Case 65 To 90 ' Char To Number
xlColumnValue = Asc(strColumnIndex) - 65 + 1
If Len(strColumnIndex) > 1 Then
xlColumnValue = xlColumnValue * 26 + Asc(Right(strColumnIndex, 1)) - 65 + 1
End If
Case Else
MsgBox "Not yet implemented or Error", vbExclamation, "Error"
End Select
End Function
Conclusion :
exemple d'appel:
xlColumnValue ("AB") renvoie 28
xlColumnValue ("81") renvoie CC
xlColumnValue ("$CD$31) renvoie 82
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.