VBA - 范围对象的偏移量(命名引用)



我对VBA相对较新,我发现很难理解MS VBA文档。

我正在编写一个宏来对财务模型执行一些场景测试。我有一个名为 Notional Tenor(整数值(的命名引用,我想检索单元格的值(右侧的 3 + J(以前定义的整数值(。

Dim Notional_Tenor As Range, Value As Integer
Set Notional_Tenor = Sheets("Scenario & Inputs").Range("Notional_Tenor")
Value = Notional_Tenor.Offset(0, 3 + J).Value2
Debug.Print Value

我的 Debug.Print 语句在我的即时框中没有显示任何内容(值应等于 18(。这是我的代码吗?

任何帮助非常感谢!谢谢

如果区域"Notional_Tenor"不是单个单元格(例如,区域 3 个单元格 x 5 个单元格(,则此偏移量将无法正常工作,因为它无法返回多个单元格的值。 如果是单个单元格,只需直接引用它即可。 如果要搜索范围以查找参考单元格,则可以执行以下操作:

Dim j As Integer
Dim foundRange As Range
Dim searchFor as string
Dim Notional_Tenor As Range
Dim Value As Integer
j = 1
searchFor = "some value"
Set Notional_Tenor = Sheets("Scenario & Inputs").Range("Notional_Tenor")
Set foundRange = Notional_Tenor.Find(What:=searchFor, LookIn:=xlValues, LookAt:=xlWhole)
Value = foundRange.Offset(0, 3 + j).Value
MsgBox Value

最新更新