Windows8 & Office2013 Access2013

Print Friendly, PDF & Email

2つのテーブルの差分を求める

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

Accessで2つのテーブルの不一致レコードを抽出する方法です。
下のように[テーブルA]と[テーブルB]があります。テーブルのオブジェクトの表示は、タブを使わない[ウィンドウを重ねて表示する]設定にしています。
2つのテーブル

[ウィンドウを重ねて表示する]設定

オブジェクトのタブを使わない表示は、[Accessのオプション]の[基本のデータベース]にある[ドキュメントウィンドウオプション]で[ウィンドウを重ねて表示する]を選択します。Access2007以降は、タブ付きウィンドウの表示が既定になっています。設定の詳細は、タブを使わない表示、またはタブではなく、ウィンドウで表示したいを参照してください。
Accessのオプション

不一致クエリウィザードの起動

[作成]タブにある[クエリウィザード]をクリックします。
クエリウィザード

[不一致クエリウィザード]をクリックします。ウィザードは、初心者向けによく作られています。できれば、ウィザードに記載されているヒントは一読されることをおすすめします。
不一致クエリウィザードには、以下のように記されています。

このウィザードで、1つのテーブルからほかのテーブルと一致しないレコード(行)を抽出するクエリを作成します。

不一致クエリウィザード

ウィザードに記載されているヒントを読むと分かりやすいですね。

このウィザードは、あるテーブルのレコードのうち、もう1つのテーブルのレコードと対応しないものだけを抽出するクエリを作成します。たとえば、注文がなかった得意先だけを抽出するクエリを作成できます。最初にレコードを抽出するテーブルまたはクエリを選択し、次に比較に使うテーブルまたはクエリを選択します。

[テーブルA]を選択して、[次へ]ボタンをクリックします。
テーブルの選択

不一致クエリウィザードのヒントを記載します。

比較に使うテーブルまたはクエリを選択します。
たとえば、前の画面で[得意先]テーブルを選択した場合、注文がなかった得意先だけを取り出すには、[受注]テーブルを選択します。

ここでは[テーブルB]を選択して、[次へ]ボタンをクリックします。
テーブルの選択

2つのテーブルに共通するデータを含むフィールドを選択します。
たとえば、[得意先]テーブルと[受注]テーブルは、[得意先コード]フィールドによって関連付けられます。関連付けるフィールドは、それぞれ別の名前でもかまいません。
各テーブルから関連付けるフィールドを選択し、[<=>]をクリックしてください。

ここでは、[日付]を選択して、[<=>]ボタンをクリックして、[次へ]ボタンをクリックします。
フィールドの選択

クエリの結果に表示するフィールドを選択してください。

ここでは、すべて表示したいので、[>>]ボタンをクリックします。
フィールドの選択

下のように右側にフィールド名が移動します。[次へ]ボタンをクリックします。
フィールドの確認

クエリに名前を付けます。下の[テーブルAとテーブルBの差分]は既定のままです。[クエリを実行して結果を表示する]を選択したまま[完了]ボタンをクリックします。
クエリに名前を付ける

不一致レコードの抽出結果

下のように不一致レコードのみが抽出されます。

関連2つのテーブルの不一致レコードを抽出して、さらにその差分をテーブルに追加したいということがありますね。これも[追加クエリ]を使って、簡単に操作することができます。
ここで求めたレコードを元に追加クエリで、テーブルBに追加する方法を差分を追加で紹介しています。

差分を追加

Accessで2つのテーブルの不一致レコードを抽出した後、その差分レコードをテーブルへ追加する方法です。 下のような[テーブルA]と[テーブ ...

続きを見る

追加クエリも参考になると思います。

追加クエリ

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

続きを見る

参考Officeのバージョンによって操作が異なる場合があります。以下の記事で、お使いのOfficeのバージョンを確認する方法を解説しています。

Office(Word、Excel、PowerPointなど)のバージョンを確認する方法

Microsoft Officeも時を得て、大きく様変わりしてきました。トラブルを解決しようとするとき、あるいは、何かの操作を探すときなど、 ...

続きを見る

あなたへのおすすめ

関連記事

2つのセルの文字列を比較して同じ文字列かどうかを確認するには

Excelで2つのセルに入力された文字列が合っているかどうかを確認する方法です。 下のようにB列とC列に文字列が入力されています。 B1=C ...

Wordのマクロを全ての文書で使えるようにしたい

Wordで作成したマクロを全ての文書で使えるようにする方法です。 まず、マクロを作成した文書を開きます。そして[開発]タブの[マクロ]をクリ ...

フォームを開く時に前回のフィルターの状態で開きたい

Accessの分割フォームでデータシートのフィルターを使って絞り込みを行います。 絞り込みの結果は下のようになります。 この絞り込んだ状態の ...

Excelのテキストボックスでのタブ設定

Excelでテキストボックスを挿入した後、そのテキストボックス内の文字列にタブ設定をする方法です。 テキストボックスの挿入 [挿入]タブの[ ...

フィールドのグループ化

Excel2013のピボットテーブルでフィールドのグループ化の操作です。 日付フィールドで[月]や[年]でグループ化するには、日付フィールド ...

-Windows8 & Office2013 Access2013

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

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