InputBoxで数値以外を入力された場合、再入力を促したい
マクロの動きは、マニュアルがなくてもユーザーがわかるような導線の作りを心掛けたいです。
InputBoxで数字のみを入力させたいのに、ユーザーが数字以外を入力するケースがあります。
数字以外が入力されたら再度入力をやり直させるようにするなど、
不具合が発生しにくい作りにする必要があります。
InputBoxで数値以外を入力された場合、再入力を促すサンプルコード
'■インプットボックスに入力された値が数値以外なら再度入力、数値なら入力数値を返却 Public Function Call_InputBox_IsNumeric() Dim num As Variant Contiune: num = InputBox("数値入力して下さい") If num = "" Then End 'キャンセルを押した場合はマクロ終了 If IsNumeric(num) = False Then MsgBox "数値以外が入力されました。再度入力ください": GoTo Contiune Call_InputBox_IsNumeric = num End Function
注意点
- 上記はInputBox関数の場合です。
- Application.InputBoxメソッドの場合、 引数に「Type:=1」で数値のみ入力です。
※数値以外のものを入力すると「数値が正しくありません」ポップアップが表示され、再入力必要。
コメント