【VBA】入力規則を設定して、指定した間隔の数値のみ入力できるようにする

VBAで
 ・入力規則を設定して
 ・指定した間隔の数値のみ入力可にする方法
を記載します!

入力できる値を制限することで、
誤入力を防止できます!

ここでは例として、
 ・1~100のみ入力可
にする方法を記載します!

PR

VBAコード

ここでは例として、シート「sample」のセルC列「評価」に対し、1~100のみ入力可にします。

Option Explicit

Sub sample()

    With Worksheets("sample").Range("C3:C5").Validation
        '既存の設定をクリア
        .Delete
        '1~100のみ入力可にする
        .Add Type:=xlValidateWholeNumber, _
                Operator:=xlBetween, _
                Formula1:="1", _
                Formula2:="100", _
                AlertStyle:=xlValidAlertStop
        'エラータイトル
        .ErrorTitle = "入力エラー"
        'エラーメッセージ
        .ErrorMessage = "1~100の数値を入力してください。"
        '日本語入力モードをOFF(=英語モード)
        .IMEMode = xlIMEModeOff
    End With
    
End Sub

「Range(“XXX”).Validation.Add」により、入力規則を設定できます。

「Type」に「xlValidateWholeNumber」を指定することで、整数のみを入力可にできます。

「Operator」に「xlBetween」を指定することで、指定した間隔の数値のみ入力可に設定できます。

「Formula1」と「Formula2」に制限したい間隔の数値を指定します。
※上記では「1」と「100」を指定しています。

「ErrorTitle」に「エラーメッセージ画面のタイトル」を指定します。

「ErrorMessage」に「エラーメッセージ」を指定します。

PR

実行結果

シート「sample」のセルC列「評価」に1~100以外の入力を試みると、エラーとなり入力不可であることが確認できました。

タイトルとURLをコピーしました