Google検索

リンクユニット

Windows7 & Office2010 Access2010

変更履歴テーブルの作成

投稿日:2017年1月7日 更新日:

追加クエリを使用して、テーブルに変更履歴を残す方法です。

テーブルの確認

[T_売上]テーブルは、下のようになっています。

テーブル

[T_売上]テーブルのデザインビューです。[ID]が主キーとなっています。

デザインビュー

売上履歴テーブルの作成

この[T_売上]テーブルをコピーして、[T_売上の履歴]テーブルを作成します。

[ID]の主キーは削除して、重複のレコードが保存できるようにします。

履歴テーブル作成

[F_帳票]フォームの[開く]ボタンをクリックすると[F_単票]フォームが開くように設定しています。

これについては、帳票フォームから単票フォームを起動するにはを参照してください。

帳票フォームから同じIDの単票フォームを起動するには

Accessで、帳票フォームから同じIDの単票フォームをボタンで起動する方法を解説します。 横に長い情報より、1つのウィンドウで表示したいと ...

続きを見る

この[F_単票]フォームで[担当者]や[数量][商品]を変更したら、更新日時が自動取得され、そのデータが[T_売上の履歴]に保存されるようにします。

単票フォーム

[更新日時]が自動的に取得されるように[担当者][数量][商品]コントロールの[更新後処理]イベントに以下のように入力します。

Me.更新日 = Now()

VBA

追加クエリの作成

追加クエリを作成します。

[T_売上]テーブルを元に下のように設定します。

フィールド[ID]の抽出条件も忘れないように入力します。

 [forms]![F_帳票]![ID]

[デザイン]タブにある[クエリの種類]グループにある[追加]ボタンをクリックします。

[追加]ダイアログボックスで[追加先]の[テーブル名]に[T_売上の履歴]を選択します。

[OK]ボタンをクリックしてクエリに名前を付けて保存します。

ここでは、[Q_売上 追加クエリ]としています。

追加クエリ

マクロの作成

[追加クエリ]を実行するためのマクロを下のように作成します。

マクロ名は、[履歴]としています。

マクロ

このまま[F_単票]の更新後処理にマクロを指定してもいいのですが、このままだと

プロパティシート 更新後処理

[追加クエリを実行すると、テーブルのデータが変更されます]と[1件のレコードを追加します]という、以下のメッセージがクエリを実行する度に表示されるようになります。

メッセージウィンドウ

メッセージウィンドウ

マクロの編集

面倒なので、マクロを下のように[メッセージの表示]を[いいえ]に編集します。

マクロは右側にマウスをポイントすると[↑][↓]の矢印が表示されますので、この矢印で順番を変更することができます。

以下の記事も参考になると思います。

レコード削除時の確認メッセージを非表示にする

Accessでレコードを削除すると、下のように確認メッセージが表示されます。 この確認メッセージは、非表示にすることができます。 Acces ...

続きを見る

履歴 マクロ

テーブル[T_売上の履歴]を表示すると、下のようにデータを更新したレコードが追加されています。

[更新日]がないレコードはコピーしたときのレコードですから削除するといいですね。

テーブル作成時にレコードを削除して、空のテーブルにしておいてもいいです。

また、このテーブルを元にフォームを作成し、ボタンをクリックして履歴を閲覧できるようにすると、より便利です。

履歴テーブル

関連以下は、アクションクエリに関する記事です。

追加クエリ

1つのテーブルに別のテーブルのレコードを追加する方法です。 [6月]と[7月]のテーブルがあって、各テーブルのフィールド名は同じです。 6月 ...

続きを見る

アクションクエリ実行時の確認メッセージを非表示にする

以下のメッセージウィンドウは、追加クエリを実行したときに表示されるメッセージです。 アクションクエリを実行すると、必ずメッセージウィンドウが ...

続きを見る

グループ化で重複レコードを削除したテーブルを作成

Access2013で、1つのテーブルで重複したレコードを削除してマスターテーブルを作成する方法です。 テーブルの確認 以下のようなテーブル ...

続きを見る

差分を追加(追加クエリ)

Accessで2つのテーブルの不一致レコードを抽出した後、その差分レコードをテーブルへ追加する方法です。 不一致クエリウィザードで差分レコー ...

続きを見る

おすすめ記事と広告

推奨管理人一押しのテキストです。私もこれで学習しました。

-Windows7 & Office2010 Access2010

Copyright © 2001-2018 初心者のためのOffice講座 All Rights Reserved.

Copyright© 初心者のためのOffice講座 , 2018 AllRights Reserved Powered by AFFINGER4.