以下のコードを実行すると、メッセージボックスには何と表示されるか。
選択肢の中から正しいものを1つ解答しなさい。
Sub Exam1()
Dim N As Variant
N = "Hello"
MsgBox IsNumeric(N)
End Sub
1.True
2.False
3.エラー
4.Hello
正解
2
解説
【8章 関数】
【IsNumeric関数】
●IsNumeric関数は指定した値が数値かどうかを判定する関数です。
●値が数値のときは Trueを、値が数値以外の時はFalseを返します。
構文
IsNumeric(判定する値)
●なお値に("123")のように数値を文字列としてダブルクォーテーションで囲った場合には、 VBAの内部で数値に変換するため Trueを返します。
以下のコードを実行すると、メッセージボックスには何と表示されるか。
選択肢の中から正しいものを1つ解答しなさい。
【コード解説】
Sub Exam1()
Dim N As Variant
’バリアント型で変数を宣言する。
N = "Hello"
’変数Nに右辺の文字列を代入する。
MsgBox IsNumeric(N)
’IsNumeric関数の戻り値をメッセージで表示する。
End Sub

1.True
誤り。
IsNumeric 関数は、引数の値が数値、または数値に変換可能な文字列である場合に True を返します。
文字列 "Hello" は数値に変換できないため、True は返しません。
2.False
正しい。
IsNumeric 関数は、引数の値が数値として認識できない場合に False を返します。
このコードでは、数値ではない文字列 "Hello" を引数としているため、False が返されます。
3.エラー
誤り。
IsNumeric 関数は様々なデータ型に対応しており、数値として認識できない値が指定されてもエラーにはならず、False を返します。
4.Hello
誤り。
IsNumeric 関数は、引数の値が数値であるかどうかの判定結果をブール値(True または False)で返す関数であり、
引数として渡した文字列そのものを返すわけではありません。