如何检查VBA Excel中的多个对象是否为空
我试着检查两个物体是否有虚无,但却找不到正确的方法来写下来 我真正尝试的是:如何检查VBA Excel中的多个对象是否为空,vba,excel,Vba,Excel,我试着检查两个物体是否有虚无,但却找不到正确的方法来写下来 我真正尝试的是: Dim NArange As Range, NAMERange As Range Set NArange = Rows(DateRange.Row).Find("#N/A", LookIn:=xlValues, LookAt:=xlWhole) Set NAMERange = Rows(DateRange.Row).Find("#NAME?", LookIn:=xlValues, LookAt:=xlWhole)
Dim NArange As Range, NAMERange As Range
Set NArange = Rows(DateRange.Row).Find("#N/A", LookIn:=xlValues, LookAt:=xlWhole)
Set NAMERange = Rows(DateRange.Row).Find("#NAME?", LookIn:=xlValues, LookAt:=xlWhole)
If (Not NArange Or Not NAMERange) Is Nothing Then
debug.print "nothing"
End If
我怎么写这封信
If (Not NArange Or Not NAMERange) Is Nothing Then
状况
谢谢 您应该像这样将两个nothing语句分开:
Dim NArange As Range, NAMERange As Range
Set NArange = ActiveSheet.Range("A1")
Set NAMERange = ActiveSheet.Range("A2")
If NArange Is Nothing Or NAMERange Is Nothing Then
MsgBox ("nothing")
Else
MsgBox ("something")
End If
您应该像这样将两个nothing语句分开:
Dim NArange As Range, NAMERange As Range
Set NArange = ActiveSheet.Range("A1")
Set NAMERange = ActiveSheet.Range("A2")
If NArange Is Nothing Or NAMERange Is Nothing Then
MsgBox ("nothing")
Else
MsgBox ("something")
End If
您需要先不进行任何测试,然后合并这些比较的结果:
If NArange Is Nothing And NAMERange Is Nothing Then
如果尝试将“是”以外的运算符应用于对象,则在本例中,它将尝试使用默认属性值。因此,Not NArange等同于Not NArange.Value。如果NArange为Nothing,则会出现运行时错误91-对象变量或未设置块变量。您需要先对Nothing进行测试,然后合并这些比较的结果:
If NArange Is Nothing And NAMERange Is Nothing Then
如果尝试将“是”以外的运算符应用于对象,则在本例中,它将尝试使用默认属性值。因此,Not NArange等同于Not NArange.Value。如果NArange为Nothing,则会出现运行时错误91-对象变量或未设置块变量。如果not Range 1为Nothing或not Range 2为Nothing,则您的条件也不正确。如果要检查这两个对象中的任何一个是否为空,则不需要输入Not关键字。它将检查条件Object1是否为Nothing=>Object1是否为某物。@Nvj是的,不清楚,我正在寻找Nothing如果Not Range 1为Nothing或Not Range 2为Nothing,则您的条件也不正确。如果要检查这两个对象中的任何一个是否为空,则不需要输入Not关键字。它将检查条件Object1不是空=>Object1是某物。@Nvj是的,不清楚,我在寻找非空