サンプル集  >  Excel VBA  >  セルの値が数値かチェック
セルの値が数値かチェック
2006/10/23

セルの内容が数値かどうかチェックします。 数値でなければ、エラーメッセージを表示し最初にエラーの発生したセルをアクティブにします。

◆環境
OS Windows 2000 Professional
Excel 2000(9.0.2812)
VBA 6.0.8435

EVBA002.xls
 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: 
39: 
40: 
41: 
'================================================================
' 2006/07/28 (c) ymlib.com
' 入力チェック
'================================================================
Option Explicit

' 入力チェックメソッド
Private Sub CommandButton1_Click()

    Dim ws          As Worksheet
    Dim clBuf       As Variant
    Dim clNext      As Variant
    Dim strCellAddr As String

    ' worksheetの取得
    Set ws = ThisWorkbook.Worksheets("名簿")

    ' "Sheet1"をアクティブにする
    ws.Activate

    ' 年齢が数値で入力されているかチェック
    For Each clBuf In Range("D5:D14")
        If Not IsNumeric(clBuf.Value) Then
            ' エラーメッセージ表示
            MsgBox "年齢は数値で入力してください。"

            ' セルのアドレスを取得
            strCellAddr _
            = clBuf.Address(False, False, xlA1, False)

            ' エラーのあったセルをアクティブにする
            Range(strCellAddr).Activate

            ' ループを抜ける
            Exit For
        End If
    Next clBuf

    Set ws = Nothing

End Sub

名簿に名前と年齢を入力します。


入力チェックボタンを押します。

数値でない値があるとメッセージダイアログが表示されます。


ダイアログでOKを押すと、数値でないセルが選択された状態になります。


▲ PageTop  ■ Home


Copyright (C) 2017 ymlib.com