fes*_*uid 43 variables vba object is-empty
我有一个对象,在其中我想检查一些属性是否设置为false,如:
If (not objresult.EOF) Then
'Some code
End if
Run Code Online (Sandbox Code Playgroud)
但不知何故,有时objresult.EOF是Empty,我该如何检查呢?
IsEmpty 功能仅适用于excel细胞objresult.EOF Is Nothing - 回归 Emptyobjresult.EOF <> null- 也回来Empty!Oor*_*ang 83
您如何测试取决于Property的DataType:
| Type | Test | Test2 | Numeric (Long, Integer, Double etc.) | If obj.Property = 0 Then | | Boolen (True/False) | If Not obj.Property Then | If obj.Property = False Then | Object | If obj.Property Is Nothing Then | | String | If obj.Property = "" Then | If LenB(obj.Property) = 0 Then | Variant | If obj.Property = Empty Then |
您可以通过按F2启动对象浏览器并查找对象来告诉DataType.另一种方法是使用TypeName函数:MsgBox TypeName(obj.Property)
Val*_*spa 18
要检查a Variant是否为Null,您需要执行以下操作:
Isnull(myvar) = True
Run Code Online (Sandbox Code Playgroud)
要么
Not Isnull(myvar)
Run Code Online (Sandbox Code Playgroud)
dea*_*asa 11
对于一个数字,它很棘手,因为如果数字单元格是emptyVBA将为其分配默认值0,那么您的VBA代码很难区分输入的零和空白数字单元格之间的区别.
以下检查对我有用,看看是否有一个实际的0进入单元格:
If CStr(rng.value) = "0" then
'your code here'
End If
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
176475 次 |
| 最近记录: |