我有4个Activex文本框,其中输入了值(数字)。第五个文本框是前四个文本框条目的总和。我希望当用户更改前四个文本框值中的一个或多个中的值时,第五个文本框动态更新。前四个框的名称为“ TextBox1,TextBox2 ...,第五个框为TextBox5。执行此操作的代码是什么?
答案 0 :(得分:0)
您需要使用change事件来检测何时更改了文本框,然后将这些值相加。默认情况下,文本框包含字符串,因此您还需要将值转换为数字(整数,双精度,长整数等)
Private Sub TextBox1_Change()
Sum
End Sub
Private Sub TextBox2_Change()
Sum
End Sub
Private Sub TextBox3_Change()
Sum
End Sub
Private Sub TextBox4_Change()
Sum
End Sub
Private Sub Sum()
TextBox5.Value = Int(TextBox1) + Int(TextBox2.Value) + Int(TextBox3.Value) + Int(TextBox4.Value)
End Sub
您可能需要进行一些错误检查以避免调试错误。这是一种检查TextBox1
中是否包含数值的方法。
Private Sub Sum()
If Not IsNumeric(TextBox1) Then
TextBox5.Value = "Error in Box 1"
Exit Sub
End If
TextBox5.Value = Int(TextBox1) + Int(TextBox2.Value) + Int(TextBox3.Value) + Int(TextBox4.Value)
End Sub