LoginSignup
0
0

【Access VBA】日付操作

Posted at

はじめに

C#でアプリ開発を行っていたエンジニアが、半年にわたるAccess案件で学んだことをまとめています。
今回はAccessVBAでの日付操作についてまとめます。

加算/減算と差分

⋙加算/減算

(例)
DateAdd("d", 2, 2024/01/01)

→取得結果:2024/01/03

第一引数:時間単位

時間単位 指定方法
yyyy
m
d
h
n
s

第二引数:加算/減算時間(減算の場合はマイナス値を指定)
第三引数:基準となる日時

第三引数に指定した日時に、第二引数で指定した値の、第一引数の単位分を加算するという仕組みになっています。

⋙差分

(例)
DateDiff("d", 2024/01/02, 2024/01/01)

→取得結果:-1

第一引数:時間単位

時間単位 指定方法
yyyy
m
d
h
n
s

第二引数:開始日時
第三引数:終了日時

第三引数-第二引数の差分を、第一引数の単位で算出するという仕組みになっています。

SQL実行時の日付指定

データ型が日付のデータを条件に用いる場合は以下のように#で囲みます

テーブル名.カラム名 = #2024/01/01#

文字列型のまま条件に指定してしまうと、正しく比較ができないので注意しましょう

日付ソート時の注意

文字列型で日付を登録している場合に昇順で取得すると、たとえば2024/09/01より2024/10/01の方が若い判定になってしまいます
日付としてソートしたい場合は以下のように日付型に変換する必要があります

CDate(XXXXX)

さいごに

いかがでしたか?
少しでも役に立つ知識があれば幸いです。
他に気づくことがあれば追記していきます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0