【VBA道場】#19 セルが数値かどうか判断する 

ExcelVBA

【VBA道場】#19 セルが数値かどうか判断する 



問題

A1のセルに数字が入っていたらB1のセルに「数字です」と表示、A1のセルに数字以外が入っていたらB1のセルに「数字以外です」と表示せよ。

 

完成見本

解答

Sub vba_doujyou_19()

’もしA1のセルが数値だったら
If IsNumeric(Range("A1")) Then

  ’B1セルに「数字です」と入力
    Range("B1").Value = "数字です"
Else

  ’数字以外だったら「数字以外です」と入力
    Range("B1").Value = "数字以外です"
End If

End Sub

サンプルファイル(マクロ有)

今回のマクロはこちらからダウンロードしてご使用いただけます。

 

解説

IsNumeric(調べる変数や式、セル):数値かどうか調べる

 

セルに入力されているデータが数値かどうか調べるには、IsNumeric関数を使います。

IsNumeric関数は、引数が数値の時にTrueを返します。
後ろの「()」には調べたい値や変数を入れます。

 

今回はA1のセルに数値が入っているかどうかを調べました。

If IsNumeric(Range("A1")) Then
    Range("B1").Value = "数字です"
Else
    Range("B1").Value = "数字以外です"
End If

今回の条件はもしA1がTrueだったらという意味になります。

If IsNumeric(Range("A1")) Then

上記のような場合、「= true」は省略することができます。

もしセルに式が入力されている場合は、結果が数値かどうかで判断されます。

 

おわりに

本日はセルが数値かどうか判断しました。
数値かどうかの判定ができるようになると、プログラムのデバック処理が非常にしやすくなります。

是非マスターしましょう!

今日はここまで!

 

おすすめ参考書

Amazon

たった1秒で仕事が片付くExcel自動化の教科書

いちばんやさしいExcelVBAの教本

ExcelVBA逆引き辞典 パーフェクト

楽天

いちばんやさしいExcelVBA

 

 

すらすら読めるExcelVBA

[商品価格に関しましては、リンクが作成された時点と現時点で情報が変更されている場合がございます。]

スラスラ読めるExcel VBAふりがなプログラミング [ リブロワークス ]
価格:2035円(税込、送料無料) (2021/4/22時点)

楽天で購入

 

 

 

VBA逆引き大辞典

[商品価格に関しましては、リンクが作成された時点と現時点で情報が変更されている場合がございます。]

Excel VBA逆引き辞典パーフェクト第3版 [ 田中亨 ]
価格:2838円(税込、送料無料) (2021/4/22時点)

楽天で購入

 

 

タイトルとURLをコピーしました