使用字符串变量作为单元格引用

时间:2019-01-24 07:53:00

标签: excel vba

我对Excel宏有问题。 我在工作簿的单元格中编写了单元格引用。 像:Sheets("Lam PVB").Cells(21,2)

然后我构造一条路径来访问另一个工作簿中的单元格值

Dim wb As Workbook: Set wb = Workbooks("17.01.2019.xls")
Dim wbMahud As Workbook: Set wbMahud = Workbooks("mahudMakro.xlsm")
Dim ws As Worksheet: Set ws = wbMahud.Sheets("jaotus")
    dataStr = wb & "." & ws.Cells(2, 1).Value & ".Value"
    Debug.Print (dataStr)

这里的问题是dataStr绝对是字符串变量,而Debug.Print输出相同的字符串变量,但是我需要获取它所引用的单元格值。

我在这里缺少什么转换?

1 个答案:

答案 0 :(得分:2)

您不能将字符串转换为VBA代码。但是您可以做的就是使用地址。

如果您在工作表jaotus的单元格A2:'Lam PVB'!B21中放入了与Sheets("Lam PVB").Cells(21,2)相同的单元格,则可以使用:

Range(ws.Cells(2, 1).Value).Value

获取地址'Lam PVB'!B21的范围。