Application.InputBox Method
允許您指定返回的數據類型。
MSDN Application.InputBox Method (Excel)
Sub Example1()
Dim number As Integer
number = Application.InputBox(Prompt:="Enter an integer:", Type:=1)
End Sub
因爲Application.InputBox
與1型參數,如果用戶取消將返回0,我寧願使用標準InputBox
。使用它的方法是讓一個單獨的變量捕獲值並測試返回值是否符合您的標準。這樣可以避免任何錯誤。
Sub Example2()
Dim number As Integer
Dim result As String
result = InputBox("Enter an integer:")
If result = "" Then
MsgBox "Good Bye", vbInformation, "Action Cancelled"
Exit Sub
ElseIf IsNumeric(result) Then
If CDbl(result) > CInt(result) Then
MsgBox "You entered a Decimal" & vbCrLf & "Try Again", vbInformation, "Intergers Only"
Else
number = result
End If
Else
MsgBox "Intergers Only" & vbCrLf & "Try Again", vbInformation, "Intergers Only"
End If
End Sub
前請'錯誤增加到'退出sub':' –
您沒有任何機制有跳過錯誤消息,所以它總是會出現。 – Rory
再一個建議 - 儘量避免使用自己的名字時的保留字或保留字。因此,而不是'錯誤'標籤,你可以使用相當常見的'ErrorHandler' –