HOME > 即効テクニック > Excel VBA > 関数関連のテクニック > InputBoxメソッドでキャンセル処理を正しく行う

即効テクニック

関数関連のテクニック

InputBoxメソッドでキャンセル処理を正しく行う

(Excel 2000/2002/2003)
● 概要 ●

InputBoxメソッドのキャンセルボタンが押下された際の処理を正確に行うには、戻り値のデータ型をVarType関数を利用してチェックします。InputBoxメソッドは、引数Typeに1を指定しすると、キャンセルボタンが押下された際には、内部処理形式Boolean型のVariant型の値「False」を返します。

 構文 VarType(VarName)

 設定項目   内容
 VarName    変数を指定

次のサンプルは、InputBoxメソッドの戻り値をVarType関数を利用して、内部処理形式Boolean型のVariant型かをチェックしています。


● サンプル ●

Sub Sample()
    Dim returnData As Variant
    returnData = Application.InputBox("データを入力してください", Type:=1)
    
    If VarType(returnData) = vbBoolean Then
        MsgBox "キャンセルされました"
        Exit Sub
    End If
    
    MsgBox "処理を続行します"
    
End Sub