提问者:小点点

将列号转换为字母的函数?


是否有人有Excel VBA函数可以从数字中返回列字母?

例如,输入100应该返回CV


共3个答案

匿名用户

此函数返回给定列号的列字母。

Function Col_Letter(lngCol As Long) As String
    Dim vArr
    vArr = Split(Cells(1, lngCol).Address(True, False), "$")
    Col_Letter = vArr(0)
End Function

第100列的测试代码

Sub Test()
    MsgBox Col_Letter(100)
End Sub

匿名用户

如果您不想使用范围对象:

Function ColumnLetter(ColumnNumber As Long) As String
    Dim n As Long
    Dim c As Byte
    Dim s As String

    n = ColumnNumber
    Do
        c = ((n - 1) Mod 26)
        s = Chr(c + 65) & s
        n = (n - c) \ 26
    Loop While n > 0
    ColumnLetter = s
End Function

匿名用户

对我有用的东西是:

Cells(Row,Column).Address 

这将为您返回AE美元的格式参考。