VBA IsNumeric関数の使い方(9例)

  • これを共有
Hugh West

を簡単に使う方法をお探しでしたら、ぜひ参考にしてください。 VBA IsNumeric この関数は一般的に ブイビーエー は,式が数値かどうかをテストし,式に応じて 式が数値の場合、それ以外の場合 FALSE .

ワークブックダウンロード

VBA IsNumeric Function.xlsm

VBA IsNumeric関数:シンタックス&アンプ、引数

⦿ シンタックス

IsNumeric (式)

⦿ 論証

論証 必須/オプション 説明
表現方法 必須 数値かどうかを確認するためのバリアントです。

⦿ 戻り値

入力 戻り値
番号
数値ではない; 文字列 FALSE

⦿ バージョン

があります。 ISNUMERIC機能 で紹介されました。 エクセル2000 バージョンで、それ以降のすべてのバージョンで利用可能です。

VBA IsNumeric関数の使用例9件

今回は、その使い方を実演してみます。 VBA IsNumeric を含むいくつかの例とともに、いくつかのランダムな例を示しています。

を使用しています。 Microsoft Excel 365 のバージョンがありますが、ご都合により他のバージョンをお使いください。

1.VBAのIsNumericをランダムな値でチェックアウトする

ここでは、いくつかのランダムな文字列を ブイビーエー アイエスヌメリック は、値が数値であるかどうか。

Step-01 :

➤へ移動します。 デベロッパー タブ>> ビジュアルベーシック オプションです。

その後 Visual Basic エディター が開きます。

➤へ移動します。 インサート タブ>> モジュール オプションです。

その後 モジュール が作成されます。

ステップ02 :

➤ 次のコードを書いてください。

 Sub checkvalue1() Dim x As Variant x = InputBox("Give any Value") MsgBox IsNumeric(x) End Sub 

ここでは、以下のように宣言しています。 x として バリアント で、入力値が格納されます。 アイエスヌメリック が返ってきます。 を返します。 ファルス メッセージボックスの中に出力があります。 MsgBox ).

➤ プレス F5 .

すると、以下のような入力ボックスが表示されるので、値を書き込むと 100 を押してください。 よっしゃー ,

というメッセージボックスが表示されます。 "真" .

文字列を書き込む場合 を押しながら よっしゃー を入力ボックスに入力します。

というメッセージボックスが表示されます。 "誤" .

続きを読む: ExcelでVBAのランダム化関数を使う方法(5例)

2.VBAのIF-THEN-ELSEステートメントでIsNumericを使用する。

この項では ISNUMERIC機能 とのことです。 IF-THEN-ELSE の文は ブイビーエー コードで数値と非数値の値を定義する。

ステップス :

➤フォロー Step-01 セクションの 1 .

➤ 次のコードを書いてください。

 Sub checkvalue2() Dim x As Variant x = InputBox("Give any Value") If IsNumeric(x) = True Then MsgBox "The Given Value is numeric" Else MsgBox "The Given Value is not numeric" End If End Sub 

ここでは、以下のように宣言しています。 x として バリアント を入力すると、入力値が保存されます。 アイエスヌメリック が返ってきます。 , イフ というメッセージを返します。 "与えられた値は数値" で、もし アイエスヌメリック 収益 FALSE であれば イフ を説明するメッセージを返します。 "指定された値は数値ではありません" .

➤ プレス F5 .

すると、以下のような入力ボックスが表示されるので、値を書き込むと 200 を押してください。 よっしゃー ,

というメッセージボックスが表示されます。 "与えられた値は数値" .

文字列を書き込む場合 を押しながら よっしゃー を入力ボックスに入力します。

というメッセージボックスが表示されます。 "指定された値は数値ではありません" .

続きを読む VBA If - Then - Elseステートメント(Excelの4例)

3.IsNumeric関数で反対の結果を作成する

ここでは ブイビーエー の逆の結果を得ることができるコードです。 ISNUMERIC機能 となり、数値の場合は次のようになります。 ファルス を返し、非数値の場合は .

ステップス :

➤フォロー Step-01 セクションの 1 .

➤ 次のコードを書いてください。

 Sub checkvalue3() Dim x As Variant x = InputBox("任意の値を与える") If IsNumeric(x) = True Then MsgBox ("FALSE") Else MsgBox ("TRUE") End If End Sub 

ここでは、以下のように宣言しています。 x として バリアント を入力すると、入力値が保存されます。 アイエスヌメリック が返ってきます。 , イフ というメッセージを返します。 "FALSE" で、もし アイエスヌメリック 収益 FALSE であれば イフ を説明するメッセージを返します。 "TRUE" .

➤ プレス F5 .

すると、以下のような入力ボックスが表示されるので、値を書き込むと 25 を押してください。 よっしゃー ,

というメッセージボックスが表示されます。 "FALSE" .

文字列を書き込む場合 アラスカ を押しながら よっしゃー を入力ボックスに入力します。

というメッセージボックスが表示されます。 "TRUE" .

関連コンテンツ ExcelのVBA書式設定関数(8つの使用例付き)

4.空白が数値かどうかの確認

で簡単に確認することができます。 ブイビーエー 空白が数値かどうかのコード。

ステップス :

➤フォロー Step-01 セクションの 1 .

➤ 次のコードを書いてください。

 Sub checkvalue4() Dim x As Variant x = " " MsgBox IsNumeric(x) End Sub 

ここでは、以下のように宣言しています。 x として バリアント を格納することになります。 ブランク 次に アイエスヌメリック が返ってきます。 があれば ブランク が数値の場合、それ以外の場合は FALSE .

➤ プレス F5 .

その後、次のようなメッセージボックスが表示されます。 "誤" ということは 空白は数値ではない .

続きを読む 乱数を生成するExcelの計算式(5例)

5.日付が数値かどうかのチェックアウト

ここでは、ランダムな日付を使って、日付が数字かどうかをチェックします。

ステップス :

➤フォロー Step-01 セクションの 1 .

➤ 次のコードを書いてください。

 Sub checkvalue5() Dim x As Variant x = "02/02/2022 " MsgBox IsNumeric(x) End Sub 

ここでは、以下のように宣言しています。 x として バリアント を選択すると、日付が保存されます。 アイエスヌメリック が返ってきます。 は、日付が数値であれば FALSE .

➤ プレス F5 .

その後、次のようなメッセージボックスが表示されます。 "誤" ということは 日付は数字ではない .

で試すこともできます。 DATESERIAL関数 を使って日付を作成し、それが数値かどうかをチェックします。

➤ 次のコードを入力します。

 Sub checkvalue5a() Dim x As Variant x = DateSerial(2022, 2, 2) MsgBox IsNumeric(x) End Sub 

ここでは、以下のように宣言しています。 x として バリアント で作成された日付が格納されます。 DATESERIAL関数 次に アイエスヌメリック が返ってきます。 は、日付が数値であれば FALSE .

➤ プレス F5 .

その代わり、次のようなメッセージボックスが表示されます。 "誤" も今回で終了です。

続きを読む VBA 日付関数 (マクロの12の使い方と例)

類似の読み物。

  • エクセルVBAでMsgBox関数を使う方法(完全ガイドブック)
  • VBAのエンバイロン関数を使う(4例)
  • ExcelでVBAと関数を使う方法(4つの例)
  • VBAのケースステートメントを使用する(13例)
  • エクセルVBAでLog関数を使う方法(5つの適切な例)

6.時刻が数値かどうかのチェックアウト

ここでは、時刻が数値であるか否かを ISNUMERIC機能 .

ステップス :

➤フォロー Step-01 セクションの 1 .

➤ 次のコードを書いてください。

 Sub checkvalue6() Dim x As Variant x = "09:30:00 AM" MsgBox IsNumeric(x) End Sub 

ここでは、以下のように宣言しています。 x として バリアント で、時間を記憶します。 アイエスヌメリック が返ってきます。 は、時刻が数値であれば FALSE .

➤ プレス F5 .

その後、次のようなメッセージボックスが表示されます。 "誤" ということは 回数は数字ではない .

で試すこともできます。 TIMESERIAL機能 を使って日付を作成し、それが数値かどうかをチェックします。

➤ 次のコードを入力します。

 Sub checkvalue6a() Dim x As Variant x = TimeSerial(9, 30, 0) MsgBox IsNumeric(x) End Sub 

ここでは、以下のように宣言しています。 x として バリアント で作成した時刻を格納します。 TIMESERIAL機能 次に アイエスヌメリック が返ってきます。 は、時刻が数値であれば FALSE .

➤ プレス F5 .

すると、次のようなメッセージボックスが表示されます。 "誤" も今回で終了です。

ここでも、シートのセル内の時間値を参照することを試してみる。

➤ 次のコードを入力します。

 Sub checkvalue6b() Dim x As Variant x = range("B2").value MsgBox IsNumeric(x) End Sub 

ここでは、以下のように宣言しています。 x として バリアント である時刻を格納します。 B2 では、セル アイエスヌメリック が返ってきます。 は、時刻が数値であれば FALSE .

➤ プレス F5 .

最後に、次のようなメッセージボックスが表示されます。 "真" 今度こそ

続きを読む ExcelでVBA TimeSerialを使用する方法(3例)

7.VBAのIsNumericを使った値の範囲指定

ここでは、その値が マーク/グレード カラムが数値または非数値で、その結果が チェック の欄があります。

ステップス :

➤フォロー Step-01 セクションの 1 .

➤ 次のコードを書いてください。

 Sub checkvalue7() Dim cell As Range For Each cell In Range("D5:D11") cell.Offset(0, 1) = IsNumeric(cell) Next cell End Sub 

セルをRangeと宣言し、その中で FOR 範囲内のセルに対してループ "D5:D11" であり、これらの細胞に対しては アイエスヌメリック が返ってきます。 を返します。 ファルス cell.Offset(0、1) は、1列後の出力値を入力列に返します。

➤ プレス F5 .

その後 は数値の場合、または マークス ファルス 非数値の場合、または グレード .

続きを読む ExcelでVBA Val関数を使う方法(7例)

8.値域をテストする関数を作成する

この節では、関数を作成する際に VBA ISNUMERIC の値が正しいかどうかを確認します。 マーク/グレード の列は、数値または非数値である。

Step-01 :

➤フォロー Step-01 セクションの 1 .

➤ 次のコードを書き留めて保存してください。

 Function IsNumericTest(value As Variant) As Boolean If IsNumeric(value) Then IsNumericTest = True Else IsNumericTest = False End If End Function 

このコードでは、以下の名前の関数が作成されます。 IsNumericTest .

ステップ02 :

➤ メインシートに戻り、セルに次の数式を入力します。 E5

=IsNumericTest(D5)

D5 マーク/グレード 生徒の、そして IsNumericTest が返ってきます。 TRUE/FALSE の値によって異なります。

➤ プレス エンタメ をドラッグダウンしてください。 フィルハンドル ツールを使用します。

最後に、私たちは は数値の場合、または マークス FALSE 非数値の場合、または グレード .

関連コンテンツ ExcelでVBAのDIR関数を使用する方法(7例)

9.VBAのIsNumeric関数で非数値的な値をカウントする

の数値でない値や成績をカウントしたい。 マーク/グレード カラムを使用し、ここではそのために VBA ISNUMERIC で持っている非数値の総数を表示します。 カウント の欄があります。

Step-01 :

➤フォロー Step-01 セクションの 1 .

➤ 次のコードを書き留めて保存してください。

 Function countnonnumeric(value As range) As Long Dim cell As range Dim count As Long For Each cell In value.Cells If Not IsNumeric(cell.value) Then count = count + 1 End If Next countnonnumeric = count End Function 

このコードでは、以下の名前の関数が作成されます。 カウントニューメリック .

セルの値が数値でない場合、そのセルには カウント が増えることになります。 1 .

ステップ02 :

➤ メインシートに戻り、次の数式を入力します。

=countnonnumeric(D5:D11)

D5:D11 の範囲です。 マーク/グレード 生徒の皆さんと カウントニューメリック は、数値以外の成績の総数を返します。

➤ プレス エンタメ

最後に、値を取得します。 3 ということは 3 の成績 マーク/グレード の欄があります。

続きを読む VBA関数で値を返すには(配列と非配列の両方の値)

IsNumericとISNUMBERの比較

  • アイエスヌメリック は,値が数値に変換可能かどうかをチェックし ISNUMBER は、値が数値として格納されているかどうかをチェックします。
  • とは若干の違いがあります。 VBA ISNUMERIC関数 とエクセル ISNUMBER機能 を作成し、その違いを以下に示してみました。 IsNumericTest関数 と内蔵のExcel ISNUMBER機能 .

プラクティス部門

自分で練習できるように 実践編 という名前のシートに、以下のようなセクションを作成します。 実践編 .自分でやってください。

結論

今回は、その使い方の一部を取り上げてみました。 VBA ISNUMERIC ご意見、ご感想がありましたら、コメント欄にご記入ください。

Hugh West は、業界で 10 年以上の経験を持つ、非常に経験豊富な Excel トレーナー兼アナリストです。彼は会計と財務の学士号と経営管理の修士号を取得しています。ヒューは教えることに情熱を持っており、理解しやすい独自の教育アプローチを開発しました。彼の Excel に関する専門知識は、世界中の何千人もの学生や専門家がスキルを向上させ、キャリアで優れた成果を上げるのに役立ってきました。 Hugh はブログを通じて知識を世界に共有し、個人や企業が潜在能力を最大限に発揮できるよう無料の Excel チュートリアルとオンライン トレーニングを提供しています。