ExcelWork.info

Excel(エクセル)のマクロ・VBA・関数・操作などのメモ

入力規則(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ソース


実行結果

Validation オブジェクト 使用例01


 - セルの操作 , , , , , , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

指定した条件に一致するセルを取得(SpecialCells メソッド)

SpecialCells メソッド SpecialCells メソッドは、指定し …

Active メソッド 例01
セルをアクティブにする・セルを選択する(Activate, Select)

セルをアクティブにする・選択する 【書式:セルをアクティブにする】 object …

罫線の設定(Borders プロパティ)

罫線の設定 罫線を一括(上下左右すべて)で設定するには、Borders プロパテ …

セルに値を設定する・セルの値を参照する(Value プロパティ)

Value プロパティ Value プロパティは、セルの値を取得したり、値を設定 …

セル・セル範囲を貼り付ける(Paste メソッド)

Paste メソッド Paste メソッドは、クリップボードの内容を指定したセル …

セル・セル範囲に名前を定義・削除(Name プロパティ・Names コレクション)

セル・セル範囲に名前を定義(Name プロパティ) Range オブジェクトのN …

フリガナの設定(Characters プロパティ,PhoneticCharacters メソッド)

Characters プロパティ Characters プロパティは、文字範囲を …

数式を設定・取得する(Formula プロパティ・FormulaR1C1 プロパティ)

Formula プロパティ(FormulaR1C1 プロパティ) Formula …

セル・セル範囲をコピーする(Copy メソッド)

Copy メソッド Copy メソッドは、セル範囲をコピーし、指定したセル範囲に …

テーマカラーで網かけ(パターン)の色の取得・設定(PatternThemeColor プロパティ・PatternTintAndShade プロパティ)

PatternThemeColor プロパティ・PatternTintAndSh …