ExcelWork.info

入力規則(Validation オブジェクト)

Validation オブジェクト

セル範囲に入力できる値を制限するには 入力規則 を使用します。VBA で、入力規則を設定するには、Validation オブジェクト を取得、設定し、Add メソッド を実行します。


【書式】

object.Validation


引数・戻り値

  • object  ・・・  対象となる Range オブジェクトを指定します。



Validation オブジェクトのメソッド

Validation.Add メソッド

指定されたセルに 入力規則 を追加します。ただし、そこに、すでに入力規則が設定されている場合は、エラーになります。


【書式】

object.Add ( type [, alertstyle, operator, formula1, formula2 ] )


引数・戻り値

  • object  ・・・  対象となる Validation オブジェクトを指定します。
  • type  ・・・  入力規則の種類を表す XlDVType 列挙型 の定数または、その値を指定します。
    定数 内容
    xlValidateInputOnly 0 すべての値
    xlValidateWholeNumber 1 整数
    xlValidateDecimal 2 小数点数
    xlValidateList 3 リスト
    xlValidateDate 4 日付
    xlValidateTime 5 時刻
    xlValidateTextLength 6 文字列の長さ
    xlValidateCustom 7 任意の数式を使用

  • alertstyle  ・・・  入力規則でのエラーメッセージのスタイルを表す XlDVAlertStyle 列挙型 の定数または、その値をを指定します。
    定数 内容
    xlValidAlertStop 1 中止
    xlValidAlertWarning 2 警告
    xlValidAlertInformation 3 情報

  • operator  ・・・  条件式の演算子を指定します。XlFormatConditionOperator 列挙型 の定数または、その値を指定します。
    定数 内容
    xlBetween 1 2 つの式の間(式が2つ指定されている場合のみ)
    xlNotBetween 2 2 つの式の間以外(式が2つ指定されている場合のみ)
    xlEqual 3 formula1 に等しい
    xlNotEqual 4 formula1 と等しくない
    xlGreater 5 formula1 より大きい
    xlLess 6 formula1 より小さい
    xlGreaterEqual 7 formula1 以上
    xlLessEqual 8 formula1 以下

  • formula1  ・・・  最初の条件式を指定します。
  • formula2  ・・・  2番目の条件式を指定します。ただし、引数 operatorxlBetween または xlNotBetween 以外の場合、この引数は無視されます。


Validation.Delete メソッド

指定されたセル範囲に設定されている 入力規則 をクリアします。


【書式】

object.Delete


引数・戻り値

  • object  ・・・  対象となる Validation オブジェクトを指定します。


Validation.Modify メソッド

指定されたセル範囲の 入力規則 を変更します。


【書式】

object.Modify ( type [, alertstyle, operator, formula1, formula2 ] )


引数・戻り値

  • object  ・・・  対象となる Validation オブジェクトを指定します。

Modify メソッド の引数は、Add メソッド と同じなので、詳細は、Add メソッドを参照してください。



入力規則の設定に関するプロパティ

ここで、設定または取得できるプロパティは、Excelでは、「データの入力規則」ダイアログボックスの「設定」タブで、確認できる内容です。


Validation.InCellDropdown プロパティ

ドロップダウンリストを利用して値を入力するかどうかの設定を行います。True に設定し、エラーメッセージの種類が「中止」の場合、指定したリストからしか値を入力することができなくなります(エラーメッセージの種類が「警告」「情報」の場合は入力可能です)。
リストのデータは、Validation.Add メソッド または、Validation.Modify メソッド の引数 formula1 で、リストデータが入力されているセル範囲を指定できます。または、「formula1 = “AAA,BBB,CCC”」のように、カンマ(,)で区切って直接指定することもできます。


【書式】

object.InCellDropdown = boolean


引数・戻り値

  • object  ・・・  対象となる Validation オブジェクトを指定します。
  • boolean  ・・・  入力規則で入力可能な値をドロップダウンリストで表示するかどうかを、ブール型(Boolean)の値で指定します。(※ 値の取得および設定が可能です。)


Validation.IgnoreBlank プロパティ

空白値の入力を許可するかどうかを設定します。


【書式】

object.IgnoreBlank = boolean


引数・戻り値

  • object  ・・・  対象となる Validation オブジェクトを指定します。
  • boolean  ・・・  入力規則において特定のセル範囲への空白値の入力を許可するかどうかをブール型(Boolean)の値で指定します。True の場合空白値の入力を許可します。(※ 値の取得および設定が可能です。)


Validation.Type プロパティ

入力規則の種類を表す長整数型(Long)の値(XlDVType 列挙型 の定数を使用)を取得します。


【書式】

object.Type


引数・戻り値

  • object  ・・・  対象となる Validation オブジェクトを指定します。


Validation.Operator プロパティ

入力規則で入力する値を制限するための条件式の演算子を表す長整数型(Long)の値(XlFormatConditionOperator 列挙型 の定数を使用)を取得します。


【書式】

object.Operator = const


引数・戻り値

  • object  ・・・  対象となる Validation オブジェクトを指定します。


Validation.Formula1 プロパティ / Validation.Formula2 プロパティ

入力規則での条件式の内容を取得します。設定は、Validation.Add メソッド で行います。


【書式】

最初の条件式の内容
object.Formula1

2番目の条件式の内容
object.Formula2

※ いずれも、値の取得のみ可能です。


引数・戻り値

  • object  ・・・  対象となる Validation オブジェクトを指定します。


Validation.Value プロパティ

セルのデータが入力規則に合った有効なデータであるかどうかを示すブール型(Boolean)の値を取得します。


【書式】

object.Value


引数・戻り値

  • object  ・・・  対象となる Validation オブジェクトを指定します。


入力規則 使用例

サンプルVBAソース


実行結果