ACCESS VBAで毎月の指定日を求める方法(VBAコード公開)

VBAで処理をする際、毎月10日や毎月20日など、支払日や請求日を求めたい場合があると思います。
そんな時に利用できる、VBAのコードを作成しましたので作成方法を含めてご紹介します。
こんにちは。
はこにわガジェット (@hakoniwagadget) です。
ACCESSを使った売上管理、顧客管理などのデータベース開発を行っています。
ACCESSは基本機能だけでも十分便利ですが、VBAを使うことで格段に使いやすいデータベースを作成可能です。
この記事ではACCESSでのVBAの使い方をご紹介していきます。
構文
毎月の指定日は、以下のVBAの構文で求めることができます。
結果日付 = DateValue(Year(元の日付) & “/” & Month(元の日付) & “/” & 指定日)
日本語の部分は実際には変数や数値を入れて利用します。
元の日付を代入する前に前月や翌月にする処理を組み合わせれば、前月の指定日や翌月の指定日も簡単に求められます。
当月20日のデータの作成方法
例として、当月20日のデータを変数処理で求めてみましょう。
この記事を書いているのは2022年2月19日ですので、この日付を入れると2022年2月20日が結果として出るようにします。
Public Function maitsuki_20(x As Date) As Date
maitsuki_20 = DateValue(Year(x) & "/" & Month(x) & "/" & 20)
MsgBox maitsuki_20
End Function
ここでは、maitsuki_20という変数に、当月の20日の日付を計算して格納し、最後にメッセージボックスで表示しています。
実行すると下記のようになります。

処理内容としては、Year関数とMonth関数を使ってそれぞれ当月の「年」と「月」を求め、日付だけは20を固定で指定して、それぞれを「/」でつないだデータにします。
これだけだと日付型データとして認識されませんので、DateValue関数で日付型データに変換しています。
以上、VBAで毎月の指定日を求める方法をご紹介しました。
ACCESSを使いこなせば、業務の効率化や自動化が実現できます。
しかし、自分でACCESSを学ぶには時間がない、難しそうで不安、という方も多いでしょう。
そんな時は、ACCESS開発歴20年以上、過去に100以上のACCESSデータベースを開発してきた私(@hakoniwagadget)にお任せください。
ACCESSの新規開発、既存のACCESSの修正、ACCESSの操作レッスンなど様々なサービスをご提供しています。
ご興味のある方は下記のサービス一覧をご覧ください。

最後までお読みいただき、ありがとうございました。