excel数据透视表之VBA运算符
发布时间:2023-01-07 14:25:39
还记得小时候学习数学的经历吗?很小很小的时候,我们会接触到数字,大人们会教我们数数,认识简单的数字,慢慢地我们会开始学习简单的加减法,再大一点,会学习乘除法,背诵乘法口诀,随着学习的深入,我们会逐渐学习到更复杂的运算和规则。
运算无处不在。在编写程序代码时,很多内容都是在进行各种各样的运算,因此,运算符非常重要。
当然,最开始我们都是从了解最基本的运算开始,逐渐深入到更多的运算内容。最先应该了解的当然是加、减、乘、除等算术运算符。
算术运算符
常用的VBA算术运算符有:加(+)、减(-)、乘(*)、除(/)、整除(\)、取模(MOD)、求幂(^)。基本的运算如下所示。
说明:
对于除法(/)运算符:假设z=x/y,如果将z声明为整型数,则结果为4,即直接舍弃掉小数位;如果将z声明为Single型或Double型,则结果为4.5。
整除(\)运算符,即在除法运算中,结果直接取商,而不管余数。
取模(MOD)运算符,即在除法运算中,结果取余数。
将变量、常量或其他元素使用运算符连接起来,就组成了表达式,特别地,单个的变量或常量也看作是表达式。
关系运算符
关系运算符用于比较,也称为比较运算符。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
Or
如果执行逻辑或运算的表达式中至少有一个为True,则其值为True,如果表达式的结果都为False,则其值为False。其格式为:
表达式1 Or 表达式2 Or 表达式3 Or … 表达式n
表达式至少有2个。
运算结果表如下:
表达式1表达式2表达式1 Or 表达式2
TrueTrueTrue
TrueFalseTrue
FalseTrueTrue
FalseFalseFalse
示例
结合前面学习的系列知识,我们来看看下面语句的意思。
ActiveSheet.Name=”工作表1” Or ActiveSheet.Name=”工作表2”
如果当前工作表是“工作表1”,或者是“工作表2”,则为True。
ActiveSheet.Name=”工作表1” And Range(“A1”).Value=”工作清单”
如果当前工作表是“工作表1”,并且当前工作表的单元格A1中的值为“工作清单”,则为True。
ActiveCell.Font.Bold = Not ActiveCell.Font.Bold
如果当前单元格中的字体为常规,则将其设置为加粗;如果当前单元格中的字体已加粗,则将其设置为常规。
补充说明:上述6个逻辑运算符也可作为按位运算符使用,并且我们只介绍了常用的3个,在后面的系列中如果用到其它的3个运算符,我们会再进行详细介绍。
字符串运算符
VBA中的字符串运算符仅一个,即字符串连接运算符,使用 & 表示,用于将一个或多个独立的字符串连接在一起。例如:
“My ” &”Family”
的结果为:
My Family
运算符的优先级
如果在同一个表达式中包含有多个运算符,那么就需要了解VBA是如何安排那个运算符先运算,那个运算符后运算,即运算的优先顺序。不了解运算符的优先顺序,随意组合运算符,可能得不到我们想要的结果。
下列出了VBA中运算符的优先级。
说明:
四类运算符由高到低的顺序依次为:算术运算符、连接运算符、关系运算符、逻辑运算符。
算术运算符由高到低的顺序依次为:^(幂)、*(乘)或/(除)、\(整除)、Mod(取模)、+(加)或-(减)。
同一表达式中多次使用同一个算术运算符时,按从左到右的顺序运算。
同一表达式中多个关系运算符,按从左到右的顺序运算。
同一表达式中多次使用同一逻辑运算符时,按从左到右的顺序运算。
如果想改变运算符的优先顺序,可以在表达式中使用()或[]。
赋值运算符
VBA使用等号(=)作为赋值运算符,用于将表达式的结果赋给变量。通常,接受结果的变量位于赋值运算符(=)的左侧,表达式位于赋值运算符的右侧。通过赋值运算符将右侧表达式的结果赋值给左侧的变量。赋值运算符可以修改变量的值。
下所示为一些简单的赋值示例。
前面我们过,可以通过VBA来改变对象属性值,因此,也可以将表达式的结果赋值给对象的属性。下面是一些示例:
Range(“A1”).Value = 100
该语句在单元格A1中输入数据100。
Range(“A2”).Value = “工作清单”
该语句在单元格A2中输入文本“工作清单”。
ActiveCell.Interior.Color = vbYellow
该语句将当前单元格的背景色设置为黄色。
注意:不要将赋值运算符与关系运算符中的“=”混淆,要在不同的表达式中区分“=”是赋值运算符还是等于运算符。
猜你喜欢
- excel中怎么快递拆分数据?excel表格中有一组数据,现在想拆分成两组数据,该怎么办呢》今天我们来看看两种解决办法,一种是快捷菜单法,另
- 这篇文章和大家分享对表格数据进行自定义筛选的两种方法。应用场景下图表格中$A$2:$B$10单元格为筛选数据区域,我们想在其中筛选出姓&qu
- 专业型公式布局即使用多行显示公式结构,以保持数学公式的原貌,从而增加易读性。线性公式布局则是将公式在单行显示出来,以方便在Word2010文
- Excel表格中怎么绘制建筑平面图?想要绘制一个房屋的平面图,但是不会使用cad软件,该怎么使用excel绘制平面图呢?下面我们就来看看详细
- 大家好!最近不少学生朋友在忙着写论文。在您忙的同时,顺便也看看我们的“易宝典”,没准对您做论文有点帮助。近期会有些易宝典文章发布,做成一系列
- 不知道是否与误操作有关,小编电脑上安装的Win10系统近期频频阻止软件的正常下载,并弹出相关的提示。那么,Win10系统下载软件被阻止该怎么
- 在word 2010窗口的状态栏中显示的信息不包括什么?在word 2010窗口的状态栏中显示的信息不包括当前编辑的文件名。包括:1、插入点
- 在Excel中不但可以按关键字进行排序和筛选,还可以按颜色进行排序和筛选。以下将通过实例说明如何按颜色进行排序和筛选操作。STEP01:打开
- ADDRESS函数由于以文本方式实现对某一单元格的引用,合理的使用该函数,可实现更加灵活的单元格引用,那么excel中address函数怎么
- 当我们使用win10系统与局域网中的计算机共享文件时,我们需要输入网络凭据、用户名和密码。在这种情况下,小编认为主要是win10的安全机制造
- 大家都喜欢win10中一些常用工具能一通百通,比如我用记事本记录下一篇文字,但现在想改成到word等别的软件中运行。这时就要求会懂得给原先的
- 目前, 使用金山wps跟office这两款办公软件的用户都非常多,但是,如果金山wps文档发到只安装了office的电脑里,是打不开的,需要
- 我们在做产品报告或使用说明等文件的时候,需要图文结合的形式来阐述,插入的图片一多就容易乱,尤其是少添加一个图片或者顺序弄错了等,到后来发现的
- 为区分不同类型的工作表,用户可以设置excel2003工作表标签的颜色,这样可以把不同类型的工作表设置为不同的标签颜色,用来区分。1、右击要
- 在我们对字体的操作(放大缩小)的过程中,会遇到放大字体后,字体显示不完整,只显示一部分,另外一部分缺失的现象.那么,我们怎么解决这一问题呢?
- 我们在编辑文档时,喜欢在文档中插入图片,使文档图文并茂,更美观。那么在word中怎么插入图片呢?下面就为大家介绍word插入图片的几种方式,
- Word文档如何设置查看密码?我们制作的Word文档为了方便放在电脑的桌面上,为了自己的文件安全,我们可以去设置一个密码,当用户需要打开查看
- excel2013表格中的图标怎么创建双y轴?在整理excel数据的时候,发现如果生成图标就需要创建双y轴,该怎么办呢?下面我们就来看看ex
- 有时候打开接收的word文档,发现鼠标在上面点击无效,复制粘贴也不行。这是怎么回事?原因:文档作者对文档进行了保护,限制他人编辑。解决方法一
- 小伙伴们在使用Word的过程中,难免会跟表格打交道。比如,在用Word制作一些报告或数据分析的时候,经常会插入表格并录入相应的数据,如下图,