Access。年月日に分かれたフィールドから日付フィールドをつくりたい
<DateSerial関数>
データを読み込んでみたら、年月日がそれぞれ分かれて管理されていました。
これでは、日付として使うことができません。
クエリの演算フィールドをつかって日付フィールドをつくることにしました。
では、どのようにしたらいいのでしょうか。
Excelでは、DATE関数をつかいますが、Accessでは、DATE関数をつかうと、Excelのようには、日付を作ることができません。
AccessのDATE関数は、どちらかというと、Excelでは、TODAY関数と同じで、今日の日付を求めることができるようになっています。
そのため、AccessのDATE関数をつかうと、年月日別々のフィールドから日付をつくることができません。
そこで、つかうのが、DateSerial関数です。
紹介するDateSerial関数が、ExcelのDATE関数と同じように、年月日が別々のフィールドから日付をつくることができる関数です。
作る前に、データを確認してみると、A03の日フィールドのあたいが32になっています。
32日なんてありませんが、DateSerial関数をつかうと、どうなるのかも合わせて確認していくことにしましょう。
では、クエリデザインで、早速クエリをつくっていきます。
次の演算フィールドをつくります。
年月日: DateSerial([年],[月],[日])
実行して確認してみましょう。
年月日別々のフィールドから、日付のフィールドをつくることができました。
そして、注目するのは、A03のデータ。
日が32になっていましたが、日付になったらば、自動的に、1日繰り上がって、翌日の2025/08/01になっていることが確認できます。
このように入力ミスなのか、わかりませんが、おかしな日付でもそれに合う日付として演算してくれるようです。