- 締切済み
2つのテーブルデータを突合せし、条件に一致したらデータを挿入したい。
こんばんは。アクセス2003について質問します。 テーブルA 番号 終了日 001 002 003 004 テーブルB 番号 001 002 クエリ1 SELECT テーブルA.番号, テーブルA.終了日 FROM テーブルA INNER JOIN テーブルB ON テーブルA.番号 = テーブルB.番号; このようなテーブル、クエリががあります。 このとき、「テーブルAにある番号をテーブルBに追加したとき、 テーブルAにある追加した番号の「終了日」フィールドに今日の日付を投入する」 と言うことがしたいです。 要するに テーブルBに「003」と入力したら テーブルAの「003」のレコードの終了日フィールドに「2009/2/26」と入力され、 クエリ1を開いたときには 番号 終了日 001 002 003 09/02/26 となるようにしたいです。 マクロ、VBAじゃないと不可能でしょうか? もしくはADOなどでしょうか? ご教授よろしくお願い致します。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- orangezzzz
- ベストアンサー率35% (401/1119)
こんばんは。#1です。 Access初心者ではないと思っていたのですが・・ 普通の更新クエリを作るだけですが。 条件は、テーブルA.番号=テーブルB.番号 And テーブルA.終了日=Nullですよね。
- orangezzzz
- ベストアンサー率35% (401/1119)
こんにちは。#1です。 >と言うことはテーブルBにも「終了日」フィールドを作成する必要があるということですね。 いいえ、認識が違います。 テーブルBに存在する番号と、テーブルAに存在する番号が同じ場合に、テーブルAの終了日を更新する。 という意味でそう言いました。
- orangezzzz
- ベストアンサー率35% (401/1119)
こんばんは。 既にテーブルBに存在する番号のレコードの終了日を更新してもよいのであれば簡単だと思いますが。
補足
ご回答ありがとうございます。 「既にテーブルBに存在する番号のレコードの終了日を更新してもよいのであれば」 よいです! と言うことはテーブルBにも「終了日」フィールドを作成する必要があるということですね。 それ以降はどうすればいいでしょうか? 再度よろしくお願い致します。
補足
再度ご回答ありがとうございます!! なるほど!テーブル1の日付を更新するんですね。 何度も申し訳ないのですが 「テーブルBに存在する番号と、テーブルAに存在する番号が同じ場合に、テーブルAの終了日を更新する。」 はどういう作業を行なえばいいのでしょうか。。。 再度ご回答いただけると幸いです。