excel数据透视表之VBA运算符

还记得小时候学习数学的经历吗?很小很小的时候,我们会接触到数字,大人们会教我们数数,认识简单的数字,慢慢地我们会开始学习简单的加减法,再大一点,会学习乘除法,背诵乘法口诀,随着学习的深入,我们会逐渐学习到更复杂的运算和规则 。
运算无处不在 。在编写程序代码时,很多内容都是在进行各种各样的运算,因此,运算符非常重要 。
当然,最开始我们都是从了解最基本的运算开始,逐渐深入到更多的运算内容 。最先应该了解的当然是加、减、乘、除等算术运算符 。
算术运算符
常用的VBA算术运算符有:加(+)、减(-)、乘(*)、除(/)、整除(\)、取模(MOD)、求幂(^) 。基本的运算如下所示 。

excel数据透视表之VBA运算符

文章插图
说明:
对于除法(/)运算符:假设z=x/y,如果将z声明为整型数,则结果为4,即直接舍弃掉小数位;如果将z声明为Single型或Double型,则结果为4.5 。
整除(\)运算符,即在除法运算中,结果直接取商,而不管余数 。
取模(MOD)运算符,即在除法运算中,结果取余数 。
将变量、常量或其他元素使用运算符连接起来,就组成了表达式,特别地,单个的变量或常量也看作是表达式 。
关系运算符
关系运算符用于比较,也称为比较运算符 。VBA的关系运算符有:等于(=)、大于(>)、小于(<)、大于等于(>=)、小于等于(<=)、不等于(<>) 。基本的比较运算如下所示 。
excel数据透视表之VBA运算符

文章插图
在VBA中,关系运算符用于比较运算符两侧的表达式结果,比较的结果为True(真)、False(假)或者Null 。因此,关系运算符常用于条件判断中 。
Is运算符
在VBA中,经常要在对象变量之间进行判断,例如判断两个对象变量是否引用同一个对象,这时就要用到Is运算符 。
对象变量1 Is对象变量2
如果对象变量1和对象变量2都指向同一个对象,其结果是True,否则是False 。
对象变量Is Nothing
用于判断该对象变量是否有已设置对象引用,如果没有则为False 。这是程序中经常会用到的语句 。
示例:
结合前面学习的系列知识,我们来看看下面语句的意思 。
Intersect(ActiveCell, Range(“A1:B2”)) Is Nothing
该语句判断当前单元格是否在单元格区域A1:B2内,如果当前单元格不在该区域内,则为True 。Intersect方法属于Application对象,返回一个Range对象,代表该方法指定参数的交叉区域 。
逻辑运算符
逻辑运算符用于对表达式进行运算并返回一个逻辑值 。VBA支持6个逻辑运算符,即Not(逻辑非)、And(逻辑与)、Or(逻辑或)、Xor(逻辑异或)、Eqv(逻辑与或)、Imp(逻辑蕴涵) 。其中,Not、And、Or在我们通常的程序中经常会用到,应重点了解 。
Not
对表达式进行逻辑非运算后,如果表达式的结果为True,那么Not运算使其值变为False;如果表达式的结果为False,那么Not运算使其值变为True 。其格式为:
Not 表达式
运算结果表如下:
表达式Not 表达式
TrueFalse
FalseTrue
And
如果执行逻辑与运算的表达式都为True,则其值为True,只要有一个表达式的结果为False,则其值为False 。其格式为:
表达式1 And 表达式2 And 表达式3 And … 表达式n
表达式至少有2个 。
运算结果表如下:
表达式1表达式2表达式1 And 表达式2
TrueTrueTrue
TrueFalseFalse
FalseTrueFalse
FalseFalseFalse

推荐阅读