エラー(CVErr 関数・IsError 関数・Error 関数)
CVErr 関数(エラー番号をエラー値に変換する)の使い方
return_value = CVErr ( error_number )
【引数・戻り値の説明】
- error_number ・・・ 任意の数値 (エラー番号) を指定します。
- return_value ・・・ エラー値(バリアント型)
CVErr 関数の戻り値( エラー値 return_value )をバリアント型以外の変数に直接代入することはできません。ただし、CVErr 関数の戻り値を明示的に変換 (CInt 関数、CDbl 関数などを使用して変換) することにより、適切なデータ型の変数に代入することはできます。
IsError 関数(エラー値を含んでいるかどうかを調べる)の使い方
return_value = IsError ( expression )
【引数・戻り値の説明】
- expression ・・・ エラー値を含んでいるかどうかチェックを行いたいセルの値や変数・数式を指定します。
- return_value ・・・ expression がエラー値かどうかを調べて結果をブール型(Boolean)で返します。(expression がエラー値の時は True / エラー値でない時はFalse)
エラー値を生成するには CVErr 関数 を使います。
CVErr 関数・IsError 関数 の使用例
サンプルVBAソース
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
Sub Sample_CVErr_IsError() Dim abc, x, y x = 20: y = 0 abc = Func_DivisionNum(x, y) If IsError(abc) Then MsgBox CStr(abc) & Chr(13) & Error(CInt(abc)) Else MsgBox abc End If End Sub Function Func_DivisionNum(num1, num2) If IsNumeric(num1) And IsNumeric(num2) And num2 <> 0 Then Func_DivisionNum = Int(num1 / num2) Else Func_DivisionNum = CVErr(1000) End If End Function |
実行結果
Error 関数(エラー番号に対応したエラーメッセージを返す)の使い方
error_message = Error ( [ error_number ] )
【引数・戻り値の説明】
- error_number ・・・ 任意のエラー番号を指定します。error_number が定義されていない場合、Error 関数は文字列 “アプリケーション定義またはオブジェクト定義のエラーです。” を返します。また有効な範囲外の番号を指定すると、実行時エラーが発生します。error_number を省略すると、最後に発生した実行時エラーに対応するメッセージを返します。実行時エラーが発生していない場合、Error 関数は長さ 0 の文字列 (“”) を返します。(省略可能)
- error_message ・・・ error_number に対応するエラーメッセージを返します。
Error 関数 の使用例
サンプルVBAソース
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
Sub Sample_Error() Dim ErrorNumber, ErrorMessage For ErrorNumber = 1 To 65535 ErrorMessage = Error(ErrorNumber) If ErrorMessage <> "アプリケーション定義またはオブジェクト定義のエラーです。" Then Debug.Print ErrorNumber & ":" & ErrorMessage Next ErrorNumber End Sub |
実行結果
関連記事
-
-
文字列:2つの文字列を比較する(StrComp 関数)
StrComp 関数の使い方 【書式】 result = StrComp ( s …
-
-
日付時刻:文字列から日付・時刻データを取得( DateValue 関数、TimeValue 関数 )
DateValue 関数(文字列から日付データを取得) 【書式】 date_va …
-
-
xlFileFormat 列挙型
xlFileFormat 列挙型 Workbook.SaveAs メソッド の引 …
-
-
文字列:アルファベットを小文字または大文字に変換(LCase 関数,UCase 関数)
LCase 関数・UCase 関数 の使い方 【書式】 <アルファベットの大文字 …
-
-
Option Compare ステートメント
Option Compare ステートメントの使い方 【書式】 Option C …
-
-
カレントフォルダ(CurDir 関数、ChDir ステートメント、ChDrive ステートメント)
カレントフォルダ カレントフォルダとは、ブックを開いたり保存するときに既定で参照 …
-
-
VBA で正規表現を使う(RegExp オブジェクト)
RegExp オブジェクト VBA で正規表現を使うには、VBScript のR …
-
-
フォントの設定(Font プロパティ)
フォントの設定(Font プロパティ) 指定されたオブジェクトのフォント情報(F …
-
-
文字列:指定した文字の文字コードを取得する(Asc 関数)
Asc 関数 【書式】 result = Asc ( string ) 引数・戻 …
-
-
ある数値が、複数の範囲のどの範囲に含まれるかを示す文字列を返す(Partition 関数)
Partition 関数 の使い方 Partition 関数は、ある数値が、区切 …
- PREV
- データ型変換関数
- NEXT
- 引数の整数部分を取得する(Fix 関数・Int 関数)