TOPページへ

指定したセルの値が数値かどうか調べるExcel VBAの記述

Excel VBAExcel のテクニカル情報サイトです。
Excelは、VBAを使うとありとあらゆる処理ができ、とても便利です!
そんな、エクセルの知識や実用的なVBAマクロなどをたくさん紹介していきます!


このページでは、指定したセルの値が数値かどうか調べるExcel VBAの記述についてまとめています。





RSS情報アンテナ表示

【サイト管理人よりひと言】
Excel VBA の素晴らしさに惹かれてこのサイトを作りました。 ExcelでVBAプログラミングが組めるようになると、どんな面倒な処理でも VBAで処理をさせることができるようになります。 私の場合、事務系の仕事の面倒な処理は全てExcelにやらせています。 Excel VBAに出会ってからは驚くほど仕事の効率が上がりました。 今まで数時間かかっていた事務処理の仕事が、わずか数秒で終わったりしています。 本当にエクセルは素晴らしい表計算アプリケーションソフトです。

指定したセルの値が数値かどうか調べるExcel VBAの記述

Excel VBAで、調べたいセルに入力されている値が数値かどうか?
調べたい場合があると思います。例えば、数値以外が入力された場合は、
「数値を入力してください。」などのメッセージを表示させたい場合など。
エクセルで何かデータを入力するプログラムを作成し、複数の人たちに
数値のデータ入力をさせる場合、入力された値のチェックは必要になる
と思います。私は、売上データを管理するソフトをエクセルVBAで作り、
入力された値がアルファベットなどの文字列だった場合は、入力ミスの
メッセージを表示するように作っています。これにより、入力ミスの間違い
のままデータを保存してしまうミスは全くなくなりました。何かデータを
入力させるプログラムを作る場合は、今回紹介しているセルに入力された
データのチェック処理は必須ですね。こういう処理を簡単に組み込めるあたり、
本当にエクセルVBAは便利です。



[記述例] 指定したセルの値が数値かどうか調べるVBA記述
Sub test()

    '指定したセルを調べる
    If Cells(1, 1) <> "" Then
        'もし数値だったらこちらの処理
        If IsNumeric(Cells(1, 1)) = True Then
            MsgBox "セルの値は、数値です。"
        '数値ではなかったらこちらの処理
        Else
            'メッセージ表示
            MsgBox "セルの値は、数値ではありません!"
        End If
    'セルに値が何もないときの処理
    Else
            MsgBox "空欄です。"
    End If

End Sub
[動作とプログラムの説明]
まず、
If Cells(1, 1) <> "" Then
のところで、調べたいセルを指定し、何か文字か値が入力されていたら、
それを調べる処理を行っています。何も文字が入力されていない状態、
すなわち、空欄ならば、「空欄です。」と表示させています。
指定したセルに何か値か文字が入っていた場合、
「IsNumeric」関数で数値かどうかチェックしています。
IsNumeric関数は、引数が数値だった場合は、「true」(真)を、
引数が数値ではない場合は、「false」(偽)を返します。
なので、返り値をチェックし、「true」だったら「セルの値は、
数値です。」のメッセージを表示させ、それ以外、つまり、
「false」だったら、「セルの値は、数値ではありません!」を
表示するようにしています。また、この記述例では、Cellsで、
チェックするセルを指定していますが、もちろん、セルの指定は、
Rangeの方の記述を使っても構いません。




 

カテゴリ:セル操作関係VBAマクロ 



サイト内検索



Excel NAVI(エクセル ナビ)のトップページへ移動



当サイトのプライバシーポリシーと免責事項について
当サイトの文章、記事、内容、画像、写真などの無断利用、無断転載を禁じます。
Copyright (C) Excel NAVI(エクセル ナビ) All Rights Reserved.