Microsoft Access 掲示板

フォーム日付入力時に範囲外の注意喚起をしたいのですが / 1

5 コメント
views
4 フォロー
1
hatena 2023/11/17 (金) 16:34:54 修正

データ型を意識するようにしましょう。
日付の比較をしたいのなら、日付/時刻型(Date)にすべきです。
"#" & Me.[tx初期日付] & "#"は文字列(String)です。

Dim kaisi As Date, owari As Date, kaeri As Integer

    kaisi = Me.[tx初期日付]
    owari = Me.[tx最終日付]
    If CDate(Me.[入力日付]) >= kaisi And CDate(Me.[入力日付]) <= owari Then
       Exit Sub
    Else
       kaeri = MsgBox("入力日付が今期の範囲外ですが、編集続けます?", vbYesNo)
    End If

ちなみに、VBAコード内に直接日付を入力する場合は、# で囲むことで日付/時刻型となりますが、
"#"を前後につけたら文字列です。"で囲まれたものは文字列ですので。

a = #2023/11/17# '日付/時刻型
b = "#" & "2023/11/17" & "#" '文字列 
通報 ...