将单元格(1,1)转换为“A1”,反之亦然

我正在Excel 2007中工作表生成器上工作。我有一个特定的布局,我必须遵循,我经常不得不基于input格式化单元格。 由于生成器是dynamic的,我必须计算各种范围,合并单元格等。

我怎样才能转换这样的值?

Cells(1,1)A1 ,反之亦然

单元格的地址属性可以为你得到这个:

 MsgBox Cells(1, 1).Address(RowAbsolute:=False, ColumnAbsolute:=False) 

返回A1

另一种方法可以使用RangeRowColumn属性来完成:

 MsgBox Range("A1").Row & ", " & Range("A1").Column 

返回1,1

如果你想在循环中使用它呢? 我尝试了以下,但它没有工作。 我不知道如何dynamic地重复一个范围。

 Dim i As Integer For i = 2 To 9999 Cells(i, 26).Value = Range(Cells(i, 1)).MergeArea.Cells(1, 1).Value Next i