Quote Originally Posted by Tommy
This is what I use when I need a column letter:
[vba]
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
GiveColLeter Target.Column
End Sub
Public Function GiveColLeter(iNumber As Long) As String
Dim A As String, B As String
If iNumber \ 26 > 0 Then A = Chr(64 + iNumber \ 26)
B = Chr(64 + ((iNumber / 26) - (iNumber \ 26)) * 26)
GiveColLeter = A & B
End Function
[/vba]

a few more pennies on the stack
Hi Tommy,

Tried to use your code and realized that it can't do column 26 (Z). Instead it returns A@.
Modified your code:
[vba]Public Function GiveColLetter(iNumber As Long) As String
Dim A As String, B As String
If iNumber > 26 Then
A = Chr(64 + iNumber \ 26)
B = Chr(64 + (iNumber - 26))
Else
B = Chr(64 + iNumber)
End If
GiveColLetter = A & B
End Function[/vba]

Regards.