セルの内容が数値かどうかチェックします。
数値でなければ、エラーメッセージを表示し最初にエラーの発生したセルをアクティブにします。
◆環境
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