【VBA】入力規則を設定して、日付のみ入力できるようにする

VBAで
 ・入力規則を設定して
 ・日付のみ入力可
にできます!

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

PR

VBAコード

ここでは例として、シート「sample」のセルC列「入社日」に対し、日付のみ入力可にします。

実行前
実行前
Option Explicit

Sub sample()

    With Worksheets("sample").Range("C3:C5").Validation
        '既存の設定をクリア
        .Delete
        '日付のみ入力可にする
        .Add Type:=xlValidateDate, _
                Operator:=xlGreaterEqual, _
                Formula1:="1900/1/1", _
                AlertStyle:=xlValidAlertStop
        'エラータイトル
        .ErrorTitle = "入力エラー"
        'エラーメッセージ
        .ErrorMessage = "日付を入力してください。"
    End With
    
End Sub

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

「Type」に「xlValidateDate」を指定することで、日付のみを入力可にできます。

「Formula1」に日付の形式を指定します。

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

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

PR

実行結果

シート「sample」のセルC列「入社日」に日付以外(=文字列)の入力を試みると、エラーとなり入力不可であることが確認できました。

実行結果
実行結果
PR

参考①

指定した間隔の数値のみ入力できるようにもできます。

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

PR

参考②

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

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