【发布时间】:2016-06-21 18:12:21
【问题描述】:
我正在制作一个小程序,用于检查您输入的最多 4 个数字,每个数字表示不同的内容。但我希望它说“选择一个数字”。当有人代替写信时。基本上我的 else 应该是只有当答案包含一个字母时,但是当我运行程序并输入一个字母然后按 Enter 时,我收到一个错误,关于无法将答案转换为双精度,我已经到处寻找解决这个问题,但没有什么能接近。请帮忙,我将不胜感激。我输入了 a,按下回车键,这是我得到的错误(尽管它是所有字母。不仅仅是 a。)错误是:{“从字符串““a””到类型“双”的转换无效。” } If 语句开始时发生错误。
If (e.KeyCode = Keys.Enter) Then
Dim Answer As String
Answer = txtAnswer.Text
If Answer = 1 Then
txtResponse.Text = "Good"
ElseIf Answer = 2 Then
txtResponse.Text = "Good again"
ElseIf Answer = 3 Then
txtResponse.Text = "Not too good"
ElseIf Answer = 4 Then
txtResponse.Text = "Terrible"
ElseIf Answer > 4 Or Answer < 1 Then
txtResponse.Text = "Wrong Answer"
Else
txtResponse.Text = "pick a number"
End If
End If
【问题讨论】:
-
1 是数字,“1”是字符串。所以要么你改变
Dim Answer As Integer和Answer = CInt(txtAnswer.Text),要么把所有的IF块改成“1”、“2”等。但是你不能用“>”、“
标签: string vba error-handling double type-conversion