我把代码写到数组里了,如下:但是不行,好像它是判断第一个文本框都要看是否和为1?怎么改!谢谢 Private Sub Text2_LostFocus(Index As Integer) Dim m(8) As Double Dim sm As Double For i = 0 To 7 m(i) = Val(Text2(i).Text) Next i For i = 0 To 7 sm = sm + m(i) Next i If sm <> 1 Then MsgBox "权重和不为1,请重新输入" For i = 0 To 7 Text2(i).Text = "" Next i Text2(0).SetFocus End If End Sub
用val()把文本转为数值
Private Sub Text2_LostFocus(Index As Integer)
Dim m(8) As Double
Dim sm As Double
For i = 0 To 7
m(i) = Val(Text2(i).Text)
Next i
For i = 0 To 7
sm = sm + m(i)
Next i
If sm <> 1 Then
MsgBox "权重和不为1,请重新输入"
For i = 0 To 7
Text2(i).Text = ""
Next i
Text2(0).SetFocus
End If
End Sub