VBA 运算符和内置函数

Excel VBA 语句

在 Excel 中编写 VBA 代码时,每一步都使用一组内置运算符。 这些运算符分为数学运算符、字符串运算符、比较运算符和逻辑运算符。 接下来,我们将详细了解每组运算符。

数学运算符

下表列出了主要的 VBA 数学运算符。

表的右列显示了没有括号时的默认运算符优先级。 通过向表达式添加括号,您可以根据需要更改 VBA 语句的执行顺序。

操作者操作优先

(1 – 最高;5 – 最低)

^取幂运算符1
*乘法运算符2
/除法运算符2
无余除法——返回两个数字相除的结果,没有余数。 例如, 74 将返回结果 13
勇气模(余数)运算符 – 返回两个数相除后的余数。 例如, 8 对 3 将返回结果 2.4
+加法运算符5
- 减法运算符5

字符串运算符

Excel VBA 中的基本字符串运算符是连接运算符 & (合并):

操作者操作
&连接运算符。 例如,表达式 «A» 和 «B» 将返回结果 AB.

比较运算符

比较运算符用于比较两个数字或字符串并返回一个布尔值类型 布尔 (对或错)。 下表列出了主要的 Excel VBA 比较运算符:

操作者操作
=既可以
<>不相等
<
>更好
<=小于或等于
>=大于或等于

逻辑运算符

逻辑运算符,如比较运算符,返回类型为布尔值 布尔 (对或错)。 Excel VBA的主要逻辑运算符如下表所示:

操作者操作
合取运算,逻辑运算符 И. 例如,表达式 甲和乙 将返回 如果 A и B 两者是平等的 , 否则返回 .
Or析取运算、逻辑运算符 OR. 例如,表达式 甲或乙 将返回 如果 A or B 相等 , 并将返回 如果 A и B 两者是平等的 .
否定运算,逻辑运算符 不是. 例如,表达式 不是一个 将返回 如果 A 一样 , 或返回 如果 A 一样 .

上表并未列出 VBA 中可用的所有逻辑运算符。 可以在 Visual Basic 开发人员中心找到完整的逻辑运算符列表。

内置函数

VBA 中有许多内置函数可以在编写代码时使用。 下面列出了一些最常用的:

功能操作
ABS返回给定数字的绝对值。

示例:

  • 绝对(-20) 返回值 20;
  • 绝对(20) 返回值 20。
染色体返回与参数数值对应的 ANSI 字符。

示例:

  • 铬(10) 返回一个换行符;
  • 铬(97) 返回一个字符 a.
日期返回当前系统日期。
日期添加将指定的时间间隔添加到给定的日期。 函数语法:

DateAdd(интервал, число, дата)

论据在哪里 间隔 确定添加到给定时间间隔的类型 日期 在参数中指定的数量 .

争论 间隔 可以采用以下值之一:

间隔
YYYY
q25美分硬币
m
y一年中的一天
d
w一周中的天
ww
h小时
n分钟
s第二

示例:

  • DateAdd(«d», 32, «01/01/2015») 将日期 32/01/01 加上 2015 天,因此返回日期 02/02/2015。
  • DateAdd(«ww», 36, «01/01/2015») 将日期 36/01/01 加上 2015 周并返回日期 09/09/2015。
Datediff计算两个给定日期之间的指定时间间隔数。

示例:

  • DateDiff(«d», «01/01/2015», «02/02/2015») 计算 01/01/2015 和 02/02/2015 之间的天数,返回 32。
  • DateDiff(«ww», «01/01/2015», «03/03/2016») 计算 01/01/2015 和 03/03/2016 之间的周数,返回 61。
返回与给定日期中的月份中的某天相对应的整数。

示例: 日(«29/01/2015») 返回数字 29。

小时返回与给定时间的小时数对应的整数。

示例: 小时(«22:45:00») 返回数字 22。

指令它接受一个整数和两个字符串作为参数。 返回第二个字符串在第一个字符串中出现的位置,从整数给定的位置开始搜索。

示例:

  • InStr(1, “这是搜索词”, “词”) 返回数字 13。
  • InStr(14, "这里是搜索词,这里是另一个搜索词", "word") 返回数字 38。

请注意: 可以不指定 number 参数,在这种情况下,搜索从函数的第二个参数中指定的字符串的第一个字符开始。

诠释返回给定数字的整数部分。

示例: 整数(5.79) 返回结果 5。

伊斯达特退货政策 如果给定值是日期,或者 – 如果日期不是。

示例:

  • IsDate(«01/01/2015») 回报 ;
  • 是日期(100) 回报 .
错误退货政策 如果给定的值是错误的,或者 – 如果不是错误。
不见了可选过程参数的名称作为参数传递给函数。 不见了 回报 如果没有为相关过程参数传递值。
是数字的退货政策 如果给定的值可以被视为一个数字,否则返回 .
从给定字符串的开头返回指定数量的字符。 函数语法如下:

Left(строка, длина)

哪里 线 是原始字符串,并且 长度 是要返回的字符数,从字符串的开头开始计数。

示例:

  • 左(“abvgdejziklmn”,4) 返回字符串“abcg”;
  • 左(“abvgdejziklmn”,1) 返回字符串“a”。
莱恩返回字符串中的字符数。

示例: 伦(“abcdej”) 返回数字 7。

返回与给定日期的月份对应的整数。

示例: 月(«29/01/2015») 返回值 1。

从给定字符串的中间返回指定数量的字符。 函数语法:

中(线, 开始, 长度)

哪里 线 是原始字符串 开始 – 要提取的字符串的开头位置, 长度 是要提取的字符数。

示例:

  • 中(“abvgdejziklmn”, 4, 5) 返回字符串“where”;
  • 中(“abvgdejziklmn”, 10, 2) 返回字符串“cl”。
分钟返回与给定时间内的分钟数对应的整数。 例子: 分钟(«22:45:15») 返回值 45。
现在返回当前系统日期和时间。
从给定字符串的末尾返回指定数量的字符。 函数语法:

正确的(线, 长度)

其中 线 是原始字符串,并且 长度 是要提取的字符数,从给定字符串的末尾开始计数。

示例:

  • 对(«abvgdezhziklmn», 4) 返回字符串“clmn”;
  • 对(«abvgdezhziklmn», 1) 返回字符串“n”。
其次返回与给定时间内的秒数对应的整数。

示例: 第二(«22:45:15») 返回值 15。

平方返回参数中传递的数值的平方根。

示例:

  • 平方(4) 返回值 2;
  • 平方(16) 返回值 4。
时间返回当前系统时间。
无界返回指定数组维度的上标。

请注意: 对于多维数组,可选参数可能是要返回的维度的索引。 如果未指定,则默认值为 1。

返回与给定日期的年份对应的整数。 例子: 年份(«29/01/2015») 返回值 2015。

此列表仅包括最常用的内置 Excel Visual Basic 函数的选择。 可在 Excel 宏中使用的 VBA 函数的详尽列表可在 Visual Basic 开发人员中心找到。

发表评论