VBA中不同类型的运算和运算符

听过VBA代码吗?羡慕能用代码高效办公的人吧!VBA代码远没有大家想象的那么难,跟着小编学一起学吧!

要对Excel中不同的数据进行分析和计算,就可能需要用到运算符。

不同类型的数据,能执行的运算也不相同,所需使用的运算符也不相同。在VBA中,按不同的运算分类,将运算符分为算术运算符、比较运算符、文本运算符和逻辑运算符四类。

算术运算符

算术运算符用于对数值类型的数据执行算术运算,运算返回的结果是数值类型的数据。VBA中包含的算术运算符及各运算符的用途如表 5 - 6 所示。

表 5-6 VBA中的算术运算符及用途

比较运算符

比较运算符用于执行比较运算,比较运算返回的是Boolean类型的数据,只能是逻辑值True或False,如表 5- 7 所示。
表 5-7 VBA中的比较运算符及用途

如果要知道活动工作表A 1 单元格中的数值是否达到 500,代码为:

Range ('A1').Value >= 500如果想知道B 2 中保存的数据是否以“李”字开头,可以用代码:Range('B2').Value Like ' 李 *'

“*”是通配符,代替任意多个字符,“李*”代表以“李”开头的任意字符串。

在VBA中,可以使用的通配符及用途如表 5 -8 所示。

表 5-8 VBA中的通配符

文本运算符

文本运算符用来合并两个文本字符串,VBA中能合并文本的运算符有+和&两种,使用它们都能将运算符左右两边的字符串合并为一个新的字符串,如:

执行这个过程的效果如图 5 - 50 所示。

图 5-50 用文本运算符合并文本

逻辑运算符

逻辑运算符用于执行逻辑运算,参与运算的数据为Boolean类型,运算返回的结果只能是逻辑值True或False。

表5-9 逻辑运算符及作用

如果想知道活动工作表C 2 和D 2 两个单元格中的数据,是否至少有一个达到 60,可以将代码写为:

多种运算中应该先计算谁

在VBA中,应先处理算术运算,接着处理比较运算,然后再处理逻辑运算,但可以用括号来改变运算顺序。运算符按运算的优先级由高到低的次序排列为:括号 → 指数运算(乘方)→ 求相反数→ 乘法和除法 → 整除(求两个数相除后所得商的整数)→ 求模运算(求两个数相除后所得的余数)→ 加法和减法 → 字符串连接 → 比较运算 → 逻辑运算,同级运算按从左往右的顺序进行计算。

学会了吗?快速提高你的效率吧!从此变“excel一秒超人”!
(0)

相关推荐

  • SCL语言基本语法规则:表达式

    SCL:Structured Control Language,结构化控制语言. SCL是一种类似于计算机高级语言的编程方式,只是这种语言编写的程序,可以在PLC中运行.如果学过C语言或者VB语言,就 ...

  • C/C++编程笔记:运算符—所有编程语言的基础!一文带你搞懂它

    运算符是任何编程语言的基础.因此,如果不使用运算符,则C / C ++编程语言的功能是不完整的.我们可以将运算符定义为符号,以帮助我们对操作数执行特定的数学和逻辑计算.换句话说,我们可以说运算符对运算 ...

  • Python有哪些运算符?用法介绍!

    众所周知,编程语言的本质就是解决运算逻辑,包括Python也是如此,它可以通过各种算法实现想要的功能;当然,我们也必须搞懂各类运算符的使用,那么Python有哪些运算符呢?它的使用方法是什么?我们来看 ...

  • 前端教程:JavaScript运算符

    简单的答案可以使用表达式4+5等于9.在这里,4和5被称为操作数:+被称为运算符.JavaScript语言支持下列类型的运算符. 算术运算符 比较运算符 逻辑(或关系)运算符 赋值运算符 有条件的(或 ...

  • Python运算符是否只有加减乘除?

    数学法中的加减乘除,是运算符,但Python的运算符更加多样和复杂,分为算术运算符.比较运算符.赋值运算符.位运算符.逻辑运算符.成员运算符.身份运算符.为更加直观地了解运算符的用法,本文采用代码与注 ...

  • Java教程之运算符

    对于编程有天分的人毕竟是少数,我们大多数人想从Java语言小白进入高手,需要经过日积月累的学习.所以,怎样学习?一定要每天学习Java语言的基础! 第一节算术运算符四则与取模运算 运算符:进行特定操作 ...

  • 零基础学Python:数值类型和运算符

    数值类型 1.int(整形) 在 Python 中定义变量是 不需要指定类型(在其他很多高级语言中都需要) 整形,也被称之为整数.整数就是数学中的数字. 整形在Python中不受长度限制大小范围 定义 ...

  • 文科生自学VBA-循环类型总结和VBA中的VLookup

    --人生不是赛场,梦想不容退场,学习编程成就更好的自己-- 微软公司Office软件在商业办公领域一直占据着主流和主导地位,其中Excel在数据处理和分析领域有着强大的影响力,大部分人在经历几年职场历 ...

  • vba中获取当前sheet页的名称,当前单元格所在位置

    fname = ActiveSheet.Name-------获取当前sheet页的名称         Sname = "" & fname & "&q ...

  • 【VBA】VBA中传递参数方式 byval(副本), byref(共有变量)

    [VBA]VBA中传递参数方式 byval(副本), byref(共有变量)2012-03-15 22:18阅读:15,721 Wenbo 不关心说过什么,只关心做过什么!点滴积累.判断空间,判断趋势 ...

  • 科研 | 剑桥大学:造血细胞转录组图谱中细胞类型特异性新的LncRNA和circRNA

    编译:Champion,编辑:夏甘草.江舜尧. 原创微文,欢迎转发转载. 导读 本研究使用来自脐带和成人外周血的27种成熟细胞的90个RNA样品以及来自11种成熟细胞的32个小RNA样品进行分析.通过 ...

  • Vba中Find方法使用总结(一)

    Sub findNum()     Dim r As Range           Set r = Cells.Find('熊猫')           If Not r Is Nothing Th ...

  • EF CORE中复杂类型的映射

    实体映射时,遇到复杂类型,可选择下述方法处理: NotMapped,跳过映射 在复杂类型上声明 [Owned],但仅限该复杂类型是全部由简单值类型组成的 自定义序列化方法 示例: IPInfo使用了o ...

  • VBA中的REPLACE函数的问题

    今天见到EH一位会员问一个REPLACE函数的问题,代码如下:1 Sub Macro2()2 s = " --- "3 s = Replace (s, " - " ...

  • VBA中访问Web Service

    该篇文章是我于2009年6月10日通过自己编写的工具,批量从位于在博客园的博客站点(http://chenxizhang.cnblogs.com)同步而来.文章中的图片地址仍然是链接到博客园的.特此说 ...