【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以外の入力を試みると、エラーとなり入力不可であることが確認できました。

実行結果
実行結果
PR

参考①

指定した文字数のみ入力できるようにもできます。

詳細は以下の記事をご確認ください。

PR

参考②

日付のみ入力できるようにもできます。

詳細は以下の記事をご確認ください。

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