構文
WorksheetFunction.IsErr(Expression)
Expressionに指定した文字列・数式がError値かどうか判別します。WorksheetsFunctionです。
(Errorデータ以外(#N/Aも含む)はFalseとなります)
(Errorデータ以外(#N/Aも含む)はFalseとなります)
IsErr関数のサンプルコード
Public Sub sample_isErr() '■セルA1が「#DIV/0」の場合 '(例)A1セルに=10/0を入力した状態で上記、コードを実行する。 Debug.Print WorksheetsFunction.IsErr(Range("A1")) 'True '■セルA1が「#N/A」の場合 '(例)VLOOKUP関数で検索値が範囲内にない場合等 Debug.Print WorksheetsFunction.IsErr(Range("A1")) 'False '■セルA1が「#NAME?」の場合 '(例)関数名や定義した名前の入力が間違っている場合等 Debug.Print WorksheetsFunction.IsErr(Range("A1")) 'True '■セルA1が「#NULL!」の場合 '(例)SUM関数でコロン (:)を使うところに、スペース( )がはいっている場合等 Debug.Print WorksheetsFunction.IsErr(Range("A1")) 'True '■セルA1が「#NUM!」の場合 '(例)LARGE 関数で引数に指定できる数値の範囲を超えたとき等 Debug.Print WorksheetsFunction.IsErr(Range("A1")) 'True '■セルA1が「#REF!」の場合 '(例)SUM(B2,C2,D2)関数で列 B、C、または D を削除した場合等 Debug.Print WorksheetsFunction.IsErr(Range("A1")) 'True '■セルA1が「#SPILL!」の場合 '(例)C2にて=B2:B5とセルに入力したとき、C2~C5に非空白のセルがあった場合等 Debug.Print WorksheetsFunction.IsErr(Range("C2")) 'True '■セルA1が「#VALUE!」の場合 '(例)=B1+B2を実施する場合、B1 または、B2が数値以外の場合等 Debug.Print WorksheetsFunction.IsErr(Range("A1")) 'True End sub
注意点
- #N/Aはエラーとして、扱いません。
- エラーの種類を取得したい場合は、CVErr関数で取得する必要があります。
- WorksheetFunction.での実装です。VBAでのみ処理実装する場合isError関数が該当します。
コメント