+ 运算符
Used to sum two numbers.
语法
结果 = expression1 + expression2
+ 运算符语法具有以下几个部分:
Part | 说明 |
---|---|
result | 必需,任何数值变量。 |
Expression1 | 必需;任何表达式。 |
expression2 | 必需,任何表达式。 |
备注
使用 + 运算符时,可能无法确定是否会发生加法或字符串串联。 使用 & 运算符进行串联,以消除多义性并提供自文档化代码。
如果至少有一个表达式不是 Variant,则适用以下规则。
If | Then |
---|---|
两个表达式都为数值型数据类型 (字节、Boolean、整数、Long、简单、Double、日期、货币或 Decimal) | 加。 |
两个表达式都为字符串。 | 连接。 |
一个表达式为数值型数据类型,另一个表达式为除了 Null 的任何 “变量”。 | 加。 |
一个表达式为字符串,另一个为除了“Null”的任何“变量”。 | 连接。 |
一个表达式是 空变量 | 不做更改返回另一个表达式为结果。 |
一个表达式为数值型数据类型,另一个为“字符串”。 | 发生 Type mismatch 错误。 |
任一表达式为“Null”。 | 结果无“Null”。 |
如果两个表达式都为“变量”,则适用以下规则:
If | Then |
---|---|
两个“变量”表达式都为数值型 | 加。 |
两个“变量”表达式都为字符串 | 连接。 |
一个“变量”表达式是数值型,另一个为字符串 | 加。 |
对于只涉及数值型数据类型的简单算术相加而言,结果的数据类型通常与最精确表达式的类型相同。 精确度的顺序(从低到高)为“字节”、“整数”、“Long”、“简单”、“Double”、“货币”和“Decimal”。 以下是此顺序的例外情况。
If | result 为 |
---|---|
添加了单一和长 | 双精度型。 |
result 的数据类型是超出其规定范围的长整型、单精度型或日期变量 | 已转换为 Double 变体。 |
result 的数据类型是超出其规定范围的字节变量 | 转换为整型变量。 |
result 的数据类型是超出其规定范围的整型变量 | 转换为长整型变量。 |
日期将添加到任何数据类型 | 日期。 |
如果其中一个表达式或两个表达式都为“Null”表达式,则 结果为“Null”。 如果两个表达式都为“空” ,则结果为“整数”。 但是如果只有一个表达式为“空”,则将不做更改返回另一个表达式为结果。
注意
加法和减法使用的精度顺序与乘法使用的精度顺序不同。
示例
This example uses the + operator to sum numbers. The + operator can also be used to concatenate strings. 但是,为了排除歧义,您应该改用“&”运算符。 If the components of an expression created with the + operator include both strings and numerics, the arithmetic result is assigned. If the components are exclusively strings, the strings are concatenated.
Dim MyNumber, Var1, Var2
MyNumber = 2 + 2 ' Returns 4.
MyNumber = 4257.04 + 98112 ' Returns 102369.04.
Var1 = "34": Var2 = 6 ' Initialize mixed variables.
MyNumber = Var1 + Var2 ' Returns 40.
Var1 = "34": Var2 = "6" ' Initialize variables with strings.
MyNumber = Var1 + Var2 ' Returns "346" (string concatenation).
另请参阅
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。