我有一本工作簿,我希望自动计算文件初始化时的到期日期。
我当前的逻辑思路如下,但它给了我一个"不明确的名字"错误讯息:
Private Sub Workbook_Open()
If Worksheet(1).Range("G30") Is Nothing Then
Range("G30").Value = Now + 120
On Error GoTo 0
End Sub
工作簿旨在根据需要进行更新,因此需要检查是否已标记日期戳。
在这种情况下,有人会有任何建议吗?非常感谢提前!
答案 0 :(得分:1)
那将是:
Private Sub Workbook_Open()
With Worksheets("General Profiling")
If IsEmpty(.Range("G30")) Then .Range("G30").Value = Now + 120
End With
End Sub
自:
Worksheet
不是有效的对象参考
someRange
没什么
用于检查是否已分配Range
类型变量someRange
虽然Worksheets(1).Range("G30")
只是默认为Value
对象的Range
属性,然后你必须检查它是否为Empty
您的第二个范围参考(Range("G30").Value
)不完全合格
然后它会在当前活动的工作表中引用Range("G30")
,这可能不是您想要的那个。
在所有With Worksheets(1) - End With
次调用之前使用.
块和点(Range
)将确保它们引用相同(并且需要)的工作表