Excel 是否可能在range属性中包含一个变量?

Excel 是否可能在range属性中包含一个变量?,excel,vba,Excel,Vba,是否可以将变量传递到.range属性中 我想让下面的函数工作,但我似乎无法让它工作。我猜这与我如何调用range属性有关 function computeNVEndTime() Dim lastTime As Range Dim totalTimes As Integer Dim prod As New ProductionWebObj dim ws as WorkSheet set ws = ActiveSheet totalTimes = prod.FindNumberOfRanges("

是否可以将变量传递到.range属性中

我想让下面的函数工作,但我似乎无法让它工作。我猜这与我如何调用range属性有关

function computeNVEndTime()
Dim lastTime As Range
Dim totalTimes As Integer
Dim prod As New ProductionWebObj
dim ws as WorkSheet

set ws = ActiveSheet
totalTimes = prod.FindNumberOfRanges("time")
Set lastTime = ws.Range("time_" & totalTimes)

If isEmptyString(lastTime) Then
    computeNVEndTime = ""
Else: computeNVEndTime = lastTime.Value
End If

End Function

看起来totalTimes返回的是0,而不是我预期的10。命名范围不在“活动工作表”上,而是在下一个工作表上。谢谢你的帮助@TimWilliams和@peege

“时间(n)”是否在一组命名范围内?是。ws.Range(“time_10”)是lastTime应该设置的值,如果我知道如何将变量传递到.Range属性中。如果
totalTimes
的值为10,那么如果指定的范围存在于该表中,则代码应该可以工作。在
totalTimes=
行上画一个分隔符,然后打开“局部变量”窗口,查看totalTimes的值。totalTimes似乎返回了0,而不是我预期的10。命名范围不在“活动工作表”上,而是在下一个工作表上。谢谢你的帮助@TimWilliams和@peege!