入力規則(リストで制限する)Validation.Add メソッド
ドロップダウンリストで入力値を制限
Validation.Add メソッド(または、Validation.Modify メソッド)の 引数 Type プロパティ に 定数 xlValidateList を指定します。
object.Validation.{ Add | Modify }
( Type := xlValidateList, Formula1 := cellrange, AlertStyle := const )
引数・戻り値
- object ・・・ 対象となる Range オブジェクトを指定します。
- cellrange ・・・
【リストを直接指定】:Formula1 := “AAA,BBB,CCC,DDD,EEE” のように指定します。
【セル範囲を指定】:Formula1 := “=A1:A5” のように指定します。
【シートを含める】:Formula1 := “Sheet2!E1:E5” のように指定します。(Excel 2007 以降)
【名前付きの範囲】:Formula1 := 範囲名 のように指定します。
※ 別シートのセル範囲に「名前」を設定することで、旧バージョンの Excel でも別シートのセル範囲を指定できます。 - const ・・・ メッセージボックスのスタイルを指定します。
定数 内容 ダイアログボックス xlValidAlertStop 「停止」リストにない値は入力できません 
xlValidAlertWarning 「注意」「はい」をクリックするとリスト外の値を入力することができます 
xlValidAlertInformation 「情報」「OK」をクリックするとリスト外の値を入力することができます 
入力規則(リストで制限する) 使用例
サンプルVBAソース
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
Sub Sample02_Validation() With Range("B2").Validation '入力規則を削除 .Delete '入力規則の設定:「Sheet2」の「A1:A5」をリストに設定 'エラーメッセージのスタイルは「注意」 .Add Type:=xlValidateList, _ Formula1:="=Sheet2!A1:A5", _ AlertStyle:=xlValidAlertWarning End With End Sub |
実行結果
実行後
リストにない値を入れた時
関連記事
-
-
オートフィルタ(平均より上・平均より下)AutoFilter メソッド
平均値よりも大きい(小さい)値のレコードを抽出 AutoFilter メソッドで …
-
-
セル範囲を結合・結合を解除(Merge メソッド・UnMerge メソッド)
Merge メソッド・UnMerge メソッド セルを結合するには、指定したセル …
-
-
フリガナの設定(Characters プロパティ,PhoneticCharacters メソッド)
Characters プロパティ Characters プロパティは、文字範囲を …
-
-
任意のセルを含む行または列全体を参照(EntireRow プロパティ,EntireColumn プロパティ)
EntireRow プロパティ・EntireColumn プロパティ Entir …
-
-
入力規則(他セルや数式を利用して許容値を設定)Validation オブジェクト
他のセルや数式を利用して許容値を設定する 入力規則(その5) での設定を、マクロ …
-
-
グラデーション(Pattern プロパティ・Gradient プロパティ)
セルの背景ににグラデーションを設定する Pattern プロパティを使用するとセ …
-
-
セルの幅・高さの自動調整(AutoFit メソッド)
AutoFit メソッド AutoFit メソッドは、指定したセル・セル範囲(R …
-
-
オートフィルタ(日付フィルタ)AutoFilter メソッド
日付フィルタを使用してレコードを抽出する Excel 2007 から「日付フィル …
-
-
列名を取得、列番号を取得(Address プロパティ,Column プロパティ)
列番号を取得する セル番地(「A1」や「B3」)や列名(「A」「B」「C」 …
-
-
セル・セル範囲をコピーする(Copy メソッド)
Copy メソッド Copy メソッドは、セル範囲をコピーし、指定したセル範囲に …

