私はVBAで立ち往生しています。ウェブサイトで他の解決策を試しましたが、まだうまくいきません。複数のモジュールとフォームを使用して、Excel のセルに情報を入力しています。しかし、msgBox を空白のままにすると、タイプ 13 の不一致エラーが発生します。isNull を試してみましたが、使い方がよくわかりません。
私はせいぜい初心者のプログラマーであるため、回答はできるだけ単純にしてください。ありがとう
Sub GetEndCostGateFees()
Dim qtyGateFees As Double
Dim msg As String
Const MinCost As Integer = 0
Const MaxCost As Integer = 200
msg = "Please enter the cost, per tonne, of Gate fees "
Do
qtyGateFees = InputBox(msg, "Gate Fees")
If IsNull(qtyGateFees) Then
MsgBox ("Please enter a value. Enter 0 if none")
End If
If IsNumeric(qtyGateFees) Then
If qtyGateFess >= MinCost And qtyGateFees <= MaxCost Then Exit Do
End If
msg = "Please enter a valid number"
msg = msg & vbNewLine
msg = msg & "Please enter number between " & MinCost & " and " & MaxCost
Loop
Sheet25.Range("B43").Value = qtyGateFees
サブ終了