将数字转换为字母数字excel单元格引用

如何从数字转换为字母数字单元格引用? 例如,我有数字行,col(0,1),我想要转换为标准的MS Excel字母数字col,行(B,1)? 我很抱歉,但我不知道描述不同单元格引用的正确术语。

我想写数字单元格引用VB.NET代码,所以我的代码可以迭代,但转换为字母数字,所以我可以插入公式到我的电子表格。

要从数字列标识符转换为字母标识符,请考虑:

Sub qwerty() n = 134 s = Cells(1, n).Address(0, 0) MsgBox Left(s, Len(s) - 1) End Sub 

编辑#1

对于执行转换的函数:

 Public Function ColumnId(N As Long) As String s = Cells(1, N).Address(0, 0) ColumnId = Left(s, Len(s) - 1) End Function 

如果你想获得完整的地址。 然后你可以使用范围的.Address属性。

如果要分隔行和列,则可以使用$上的拆分将地址拆分为各个部分。

 Sub RangeAddressTest() Dim cell As Range Dim fullAddress As String Dim rowAddress As String, columnAddress As String Dim detailsArray As Variant 'select your cell Set cell = ActiveSheet.Cells(30, 25) fullAddress = cell.Address detailsArray = Split(fullAddress, "$") columnAddress = detailsArray(1) rowAddress = detailsArray(2) MsgBox "Full Address: " & fullAddress _ & vbCrLf & vbCrLf & _ "Column Address: " & columnAddress _ & vbCrLf & vbCrLf & _ "Row Address: " & rowAddress End Sub 

感谢您对我的问题的答案,都似乎他们应该工作,但四处张望我find了一个非常简单的答案从Aspose论坛,完成了两行代码的工作。 感谢您的想法 – 通过看到达到相同解决scheme的不同方式,我学到了更多。

Aspose论坛:按照我的理解,你希望在“A1”(Cell Name)语法中获得单元格的引用。 您可以考虑使用下面的代码片段返回单元格[0,0]的字母数字单元格引用。

VB

Dim r As Integer = 0,c As Integer = 0

Dim Cell As String = CellsHelper.ColumnIndexToName(c)+(r + 1)