Grazie per la risposta.
La funzione proposta fa il contrario di quello che vorrei ottenere io.
Nel frattempo avevo scritto questa funzione (spartana, ma funzionante)
- Codice: Seleziona tutto
Public Function colnum(Col) As Integer
colnumero = 0
Dim lett(26) As String
Dim colonne(30000) As String
lett(1) = "A"
lett(2) = "B"
lett(3) = "C"
lett(4) = "D"
lett(5) = "E"
lett(6) = "F"
lett(7) = "G"
lett(8) = "H"
lett(9) = "I"
lett(10) = "J"
lett(11) = "K"
lett(12) = "L"
lett(13) = "M"
lett(14) = "N"
lett(15) = "O"
lett(16) = "P"
lett(17) = "Q"
lett(18) = "R"
lett(19) = "S"
lett(20) = "T"
lett(21) = "U"
lett(22) = "V"
lett(23) = "W"
lett(24) = "X"
lett(25) = "Y"
lett(26) = "Z"
Z = 1
r = -1
For x = 1 To 100
For y = 1 To 26
r = r + 1
If Z = 1 Then
colonne(r) = lett(y)
End If
If Z = 2 Then
For zz = 1 To 26
r = r + 1
colonne(r) = lett(y) + lett(zz)
Next
End If
If Z = 3 Then
For zz = 1 To 26
For zzz = 1 To 26
r = r + 1
colonne(r) = lett(y) + lett(zz) + lett(zzz)
Next
Next
End If
Next y
Z = Z + 1
Next x
For x = 0 To UBound(colonne)
If colonne(x) = Col Then
colnum = x + 1
Exit Function
End If
Next x
End Function