2
Q:

excel vba column letter to number

Function ColName(n)
    ColName = Split(Cells(, n).Address, "$")(1)
End Function
3
Sub Test()
  Debug.Print "result: " & getColIndex("DD")  ' --> result: 108
End Sub

Function getColIndex(sColRef As String) As Long
  Dim i As Long, sum As Long, iRefLen As Long
  sum = 0: iRefLen = Len(sColRef)
  For i = iRefLen To 1 Step -1
    sum = sum + Base26(Mid(sColRef, i)) * 26 ^ (iRefLen - i)
  Next
  getColIndex = sum
End Function

Private Function Base26(sLetter As String) As Long
  Base26 = Asc(UCase(sLetter)) - 64 'fixed
End Function
0

New to Communities?

Join the community