2-16.セルに入力できるデータを制限する

Excelでは「データの入力規則」の機能を利用すると、セルに入力するデータの種類を指定することができます。VBAでそれを制御するには、「Validation」オブジェクトを使います。

○実行結果

(C列にカーソルがくると「入力規則」のメッセージが表示され、1から100の整数以外が入力されると入力エラーメッセージが表示される)


○プログラム

○解説
With Columns("C:C").Validation
C列に対して入力制限を行います。「Validationオブジェクト」は、セルの入力規則の情報を格納するオブジェクトです。入力規則の条件は、Addメソッドで設定します。

.Delete
既存の入力規則を削除します。

.Add Type:=xlValidateWholeNumber, _
AlertStyle:=xlValidAlertStop, _
Operator:=xlBetween, Formula1:="1", Formula2:="100
"
・入力のタイプは「整数」(xlValidateWholeNumber)
・警告のタイプ(AlertStyle)は、中止と再試行、キャンセルを表示(xlValidAlertStop)、これは規定値
・条件の指定(Operator)は、 Formula1:="1", Formula2:="100"。つまり1から100の範囲。


Add Typeで指定する定数
xlValidateInputOnly すべての値
xlValidateWholeNumber 整数
xlValidateDecimal 小数点
xlValidateDate 日付
xlValidateTime 時刻
xlValidateTextLength 文字列(長さ指定)
xlValidateCustom ユーザー指定


AlertStyleで指定する定数
xlValidAlertStop 中止アイコンと再試行、キャンセルボタンを表示
xlValidAlertWarnig 警告アイコンとはい、いいえ、キャンセルを表示
xlValidAlertInformation 情報アイコンとOK、キャンセルを表示


Operatoで指定する値
xlBetween 次の値の間
xlNotBetween 次の値間以外
xlEqual 次の値に等しい
xlNotEqual 次の値に等しくない
xlGreater 次の値より大きい
xlLess 次の値より小さい
xlGreaterEqual 次の値以下
xlLessEqual 次の値以下


.InputTitle = "入力規則"
.InputMessage = "1から100までの整数を入力してください"

入力するときの規則をC列にくると常時表示されます。

.ErrorTitle = "入力規則違反"
.ErrorMessage = "1から100までの整数を入力してください"

入力ミスをすると表示されるメッセージです。


メニューへ戻る

inserted by FC2 system