【发布时间】:2020-07-19 13:09:30
【问题描述】:
我是 VBA 新手,如果有人能给我的查询提示,我将不胜感激。
在第 4 行有引用一些数据的单元格地址。
如何编写代码,使用这些信息从各个单元格中提取值?
【问题讨论】:
-
需要更多上下文 - 请添加示例输入和预期输出。一个好的开始是考虑使用
Application.Match
我是 VBA 新手,如果有人能给我的查询提示,我将不胜感激。
在第 4 行有引用一些数据的单元格地址。
如何编写代码,使用这些信息从各个单元格中提取值?
【问题讨论】:
Application.Match
请试试这个代码。它将在即时窗口中返回相应的单元格值。代码假定“R34C54”表示第 34 行和第 54 列...
Sub ReturnValueFromR1C1Label()
Dim sh As Worksheet, iRow As Long, iCol As Long
Dim lastCol As Long, i As Long
Set sh = ActiveSheet 'use here your sheet
lastCol = sh.Cells(4, Columns.count).End(xlToLeft).column
For i = 3 To lastCol
iRow = Split(Split(sh.Cells(4, i).Value, "R")(1), "C")(0)
iCol = Split(sh.Cells(4, i).Value, "C")(1)
Debug.Print Cells(iRow, iCol).Address & " value = " & Cells(iRow, iCol).Value
Next i
End Sub
要查看返回值,请在 VBE 中使用 Ctrl + G...
【讨论】:
您可以使用Range 的Formula 属性,例如:
Cells(2, 1).Formula = "=" & Cells(1, 1)
其中Cells(1,1) 包含地址,例如R10C12。
Cells(2, 1) 的.Value 现在是R10C12 的内容。
【讨论】: