Function GetColumnHeaderFromIndex(ByVal Index As Integer) As String
Dim iInt%, iRest%
If Index > 256 Then
GetColumnHeaderFromIndex = vbNullString
ElseIf Index < 27 Then
GetColumnHeaderFromIndex = GetLetterFromNumber(Index)
Else
iInt = Index \ 26: iRest = Index Mod 26
If iRest = 0 Then iInt = iInt - 1: iRest = 26
GetColumnHeaderFromIndex = GetLetterFromNumber(iInt) & GetLetterFromNumber(iRest)
End If
End Function
Function GetLetterFromNumber(ByVal Number As Integer) As String
If Number < 1 Or Number > 26 Then GetLetterFromNumber = vbNullString Else GetLetterFromNumber = Chr$(Number + 64)
End Function