如何从VBA中的两个不同文本框中提取两个值?

时间:2017-11-04 13:43:45

标签: vba ms-access access-vba

我想从表单中的两个不同文本框中对两个值求和,这样我就可以正确输入代码,如下所示:

Private Sub btnResult_Click()

Dim answer As Integer
answer = txtNum1 + txtNum2
txtAns.Value = answer

End Sub

当我点击按钮txtAns时,该代码应在名为txtNum1 + txtNum2的{​​{1}}之和的框中输出,而是输出彼此相邻的两个值,而不是任何计算如下图所示:

Click here to open the picture!

但是,当我使用其他运算符(如/(或*或 - ))时,计算输出正确!

那么,发生了什么?

1 个答案:

答案 0 :(得分:1)

在以下示例中:

Dim answer As Integer
answer = "1" + "2"
Debug.Print answer

打印整数值12。会发生什么是首先评估文本表达式"1" + "2",这将产生字符串"12",它将转换为整数值12

如果你愿意的话:

answer = Int("1") + Int("2")

将打印值3

在您的脚本中,您可以:

answer = Int(txtNum1.Value) + Int(txtNum2.Value)

.Value限定符可能不是必需的,因为它是默认属性。