スポンサーリンク

2015年10月14日水曜日

日付が1年以上経過したレコードを削除する

Access2013で、指定した日より日付が1年以上経過したレコードを自動で削除する方法です。


削除する商品テーブルです。 この廃品日フィールドが1年以上経過していると削除します。

上の商品テーブルを元にクエリを作成します。

廃品日の抽出条件に、<=DateAdd("yyyy",-1,[今日]) と入力します。

DateAdd関数は指定された加算した日付を返す関数です。

引数の"yyyy"は年を指定しています。

これで今日の日付の1年前より以前の日付を抽出することになります。
廃品日の抽出条件に、<=DateAdd("yyyy",-1,[今日]) と入力

クエリを実行すると、パラメーターの入力が表示されるので、今日の日付を入力します。
パラメーターの入力が表示

今日の日付から1年以上経過した廃品日のレコードが表示されました。

これで正しく抽出されたことが確認できました。
1年以上経過した廃品日のレコードが表示

クエリデザインに戻り、リボンの[クエリツール]-[デザイン]-クエリの種類グループの[削除]をクリックします。
クエリの種類グループの[削除]をクリック

これでレコードの削除に「Where」と表示されました。
レコードの削除に「Where」と表示

クエリを実行し、今日の日付を入力します。
クエリを実行し、今日の日付を入力

「2件のレコードが指定したテーブルから削除されます」と表示されるので、削除してもよければ[はい]をクリックします。
2件のレコードが指定したテーブルから削除されます

元の商品テーブルを開くと、今日の日付から1年以上経過した廃品日のレコードが削除されています。
今日の日付から1年以上経過した廃品日のレコードが削除