本文介绍了如何在Excel中利用内置的Columns函数获取特定列的地址,并通过split函数提取列字母。例如,Columns(27).Address返回的是"$AA:$AA",进一步处理后可以得到列字母"AA",这对于处理大量数据时非常有用。 摘要由CSDN通过智能技术生成

按照字符"$"进行拆分得到数组,索引为2的就是我们需要的列字母

Function ColLetter(Num As Long) As String
     ColLetter = Split(Columns(Num).Address, "$")(2)
End Function

举例:Split(Columns(27).Address, "$")(2) 的结果是 AA

使用下 算法可以实现“ConvertToLetter”功能: 除以 27,然后将得到的整数赋值给变量“i”。 减去 i*26,然后将所得结果赋值给变量“j”。将得到的整数值 转换 为其对应的 字母 字符,“i”和“j”的取值范围将分别为 0 至 26。 例如: 为 30。 除以 27:30 / 27 = 1.1111,由“Int”函数四舍五入后得“1”。i = 1下一个 - (i ...
Function getColumnLetter(ByVal myCol As Integer) As String ' 获取 单元格 标的 字母 Dim columnName As String Dim k As Integer k = (myCol - 1) \ 26 Select Case k Case 0 Case E...
废话不多少先上代码: '***************************************************************************** '将 Excel 列数 转换 为列 名(如27 --->AA ) '参数:var 列数 '返回: 列名 string '******************************************************
Function ColumnLetterToNumber(ByVal col As String) As Integer Dim i As Integer Dim result As Integer For i = 1 To Len(col) result = result * 26 + (Asc(UCase(Mid(col, i, 1))) - 64) Next i ColumnLetterToNumber = result End Function 使用方法: Sub Test() Dim columnLetter As String Dim columnNumber As Integer columnLetter = "B" columnNumber = ColumnLetterToNumber(columnLetter) MsgBox "Column " & columnLetter & " is column number " & columnNumber End Sub 这个函数的原理是将每个 字母 转化为 数字 ,然后将多个 数字 相加得到结果。例如,将 字母 "AB"转化为 数字 ,首先将"A"转化为1,然后将"B"转化为2,最后将1和2相加得到结果3。 lao_nao: (cond((< COL 27)(setq us_rgn(chr(+ COL 64)))) ((< COL 703)(setq us_rgn(strcat(chr(+(/(- COL 27)26)65))(chr(- COL(*(/(1- COL)26)26)-64))))) (T(setq us_rgn(strcat(chr(+(/(- COL 703)676)65))(chr(+(rem(/(- COL 703)26)26)65))(chr(+(rem(- COL 703)26)65)))))) (setq us_rgn(strcat us_rgn ROW))