VBA函数
IsEmpty(expression) 测试变量是否已经被初始化
如果一个变量没有被初始化,dim a ,那么判断一般是isempty(a)=true
但是如果设置了a=null,而判断isempty(a)=false
IsNull(expression)
Null 值指出变量不包含有效数据。
指明 expression 是否包含任何有效数据(Null)。
测试可发现 变量=“” 是len=0的空字符串,也不是null
if len() =0 也可以判断,内容长度为0
类 空 “” 等很多都可以这样判断
这种并不是真的空,只是一种快捷的判断
测试代码1
Sub ttff1()
Dim a
Debug.Print "Dim a"
Debug.Print "IsEmpty(a)=" & IsEmpty(a)
Debug.Print "IsNull(a)=" & IsNull(a)
'Debug.Print Isblank(a) 'isblank()是EXCEL的函数,VBA里没有
Debug.Print ""
a = Null
Debug.Print "a=null"
Debug.Print "IsEmpty(a)=" & IsEmpty(a)
Debug.Print "IsNull(a)=" & IsNull(a)
Debug.Print ""
a = ""
Debug.Print "a="""""
Debug.Print "IsEmpty(a)=" & IsEmpty(a)
Debug.Print "IsNull(a)=" & IsNull(a)
Debug.Print ""
a = 1
Debug.Print "a=1"
Debug.Print "IsEmpty(a)=" & IsEmpty(a)
Debug.Print "IsNull(a)=" & IsNull(a)
Debug.Print ""
End Sub
测试代码2
Sub t1t1()
Dim a As Integer
Dim strb As String
Dim wb As Object
Dim x As Variant '或 dim x 默认就是variant类型的变量
a = 100
b = "abc"
Set wb = ThisWorkbook
x = Array(1, 2, 3)
Debug.Print a
Debug.Print b
Debug.Print wb.Name
Debug.Print x(0)
Debug.Print
Debug.Print "-------按变量类型给置空后--------"
a = 0
b = ""
Set wb = Nothing
x = Null
Debug.Print a
Debug.Print b
'Debug.Print wb '对象置空后好像不能这样debug.print
Debug.Print x
'a = Null '非variant变量,不能置为null
'Debug.Print a
End Sub
选中E列(就是你需要填充的那一列),摁F5(或者Ctrl+G),定位条件,选择“空值”,确定,输入=,然后摁键盘上向上的方向键,ctrl+enter结束。下载了点金融数据到excel表格里,导出的交易日宏观经济数据,在数据对齐后有一些缺失值,使用前值填充就行,懒得再导进python了,发现excel也同样好用。
vb6中存在几个虚幻的值:Null、Missing、Empty、Nothing、vbNullString。除了最后一个之外,每一个值都不能直接用“a=值”来判断。下面分别解释一下这几个值的含义。
1、Null
Null指一个不合法的数据,判断一个变量是否为Null使用isNull函数。
这种数据通常出现在三种情况下:
(1)最简单的,函数直接返回Null给调用方。譬如
Function ...
empty 有效的空值,如0 "",比较常用
null 无效的控制,比如二选一之外的空
nothing 对象变量的空值, 语法是 object is nothing 而不是用 =nothing
1.2 emptynull not...
如果 expression 由多个变量组成,则任何成员变量中的 Null 将导致为整个表达式返回 True。否则,返回 False。IsArray”在变量是数组时返回“True”否则返回“False”。expression是一个Variant 类型的值, 其中包含可识别为日期或时间的日期表达式或字符串表达式。expression被识别为数字,则“IsNumeric”返回“True”,否则,返回“False”。expression是数据表达式,则“IsNumeric”返回“False”。
28满脑子的智慧,硬生生地撑大了我的脸好久没更新了,今天来分享下两个很简单却很容易犯错的函数,ISBLANK和BLANK。先来看语法函数语法返回值ISBLANKISBLANK ( <Value> )值为空则返回True,反之FalseBLANKBLANK ( )任何类型的值表面上看两个函数只有有无参数的区别,实际上是这样吗?打开Dax studio,先来看一组结果,从结果上看是相同的,这也是为什么很多人会误以为它们是一样的。接下来看下面的例子,这时会发现结果很能和我们先前想的不一样了,ISBLA
返回空白。语法BLANK ( )返回值标量 一个任意类型的值,空值没有数据类型。备注BLANK 值在与其他值比较时自动转换类型。检查一个值是否为 BLANK 的正确方法是使用运算符 == 或 ISBLANK 函数。不要使用运算符 = 。运算符==是一个 “严格等于 “的运算符,它将 BLANK 与 0 或空字符串区别对待。BLANK 不对应 SQL 中的 NULL。DAX 中的 BLANK 不遵循...