InputBox関数で数値だけを入力させたい場合の処理です。
Do
StrIB = InputBox("開始数字?")
Loop Until IsNumeric(StrIB) = True
- Do~Loopを後判定で実行しています
- 後判定は最低1回は処理を実行します(この場合はInputBox関数)
- Untilは条件が成立するまで。Whileにすると条件が成立している間ずっと、になります
- IsNumeric関数は"数値に見えるもの"は全てTrueを返します
厳密に配列宣言する場合
Dim m As Long
Dim StrIB As String
Do
StrIB = InputBox("開始数字?")
Loop Until IsNumeric(StrIB) = True
m = CLng(StrIB)
- InputBox関数の返り値はStringです
- 実際には数値(Long型)として使いたいのでClng関数で型変換しています
- 少数を使いたい場合はSingleやDoubleなど適宜変更して下さい
※ちなみに小数を入力してLong型に変換すると小数点第一位で四捨五入されます。
以上。
←記事を気に入って頂けたらポチッとしてもらえると励みになります。