他の Access データベースのデータのインポートとリンクの設定

他の Access データベースのデータのインポートとリンクの設定

Access データベースのデータを、さまざまな方法で別の Access データベースに移すことができます。 データを別のデータベースに移すには、コピーして貼り付けるのが最も簡単な方法ですが、インポートとリンク設定を使うと、移す対象のデータとそのデータを目的のデータベースに移す方法について、優れた制御と柔軟性が得られます。

この記事では、別の Access データベースのデータをインポートまたはリンク設定する方法について説明します。

目的に合ったトピックをクリックしてください

別の Access データベースのデータのインポートとリンクを設定する方法について

別の Access データベースからデータをインポートする

別の Access データベースのデータへのリンクを設定する

別の Access データベースのデータのインポートとリンクを設定する方法について

別のデータベースからインポートすると、インポート先のデータベースにデータのコピーが作成されます。ソースは変更されません。インポート操作では、コピーするオブジェクトの選択、テーブルとクエリのインポート方法の制御、テーブル間のリレーションシップをインポートするかどうかの選択などを行うことができます。

たとえば、データをインポートして、別のデータベースに存在するテーブルと似たテーブルを作成することができます。テーブル全体をコピーするか、テーブル定義のみをコピーしてこれらのテーブルを手動でデザインする手間を省くことができます。テーブル定義のみをインポートすることを選択すると、空のテーブルが作成されます。つまり、フィールドとフィールド プロパティはインポート先のデータベースにコピーされますが、テーブルのデータはコピーされません。コピーと貼り付けに比べた場合のインポートのもう 1 つの利点は、テーブルそのものと同時にテーブル間のリレーションシップもインポートすることを選択できることです。

データベースのレコードを、別のデータベースの既存のテーブルに追加するのが目的であれば、新しいテーブルにレコードをインポートして、次に追加クエリを作成することを検討してください。インポート操作では、既存のテーブルにレコードを追加できません。追加クエリの詳細については、「追加クエリを使用してテーブルから他のテーブルにレコードを追加する」の記事を参照してください。

組織で複数の Access データベースを使用していて、Employees などの一部のテーブルのデータをさまざまなデータベース間で共有する必要がある場合でも、別の Access データベースのデータにリンクできます。この場合、各データベースでテーブルを複製する代わりに、単一のデータベースにテーブルを保持して、他のデータベースからそのテーブルにリンクすることができます。別のワークグループまたは部門がデータベースにデータを追加して使用できるようにする必要があっても、ユーザーは引き続きテーブルの構造を所有することができます。

別の Access データベースからデータをインポートする

データをインポートするには、以下の一般的な手順に従います。

  • インポートの準備を行う

  • インポート ウィザードを実行する

  • オプションで、後で再利用するためにインポート設定をインポート定義として保存する

以下の手順では、各操作を実行する方法を説明します。

インポートの準備を行う

  1. ソース データベースを見つけ、インポートするオブジェクトを確認します。

    ソース データベースが .mdb ファイルか .accdb ファイルの場合は、テーブル、クエリ、フォーム、レポート、マクロ、モジュールをインポートできます。 ソース ファイルが .mde ファイルか .accde ファイルの場合は、テーブルのみをインポートできます。

  2. 初めて Access データベースからデータをインポートする場合は、以下の表の役立つヒントを参照してください。

    要素

    説明

    複数のオブジェクト

    複数のオブジェクトを 1 回のインポート操作でインポートできます。

    新しいオブジェクト

    インポート操作ごとに、インポート先のデータベースに新しいオブジェクトが作成されます。 インポート操作で、既存のオブジェクトを上書きしたり、既存のテーブルにレコードを追加したりすることはできません。

    リンク テーブルのインポート

    ソース テーブル (たとえば、Sales データベースの Employees1) が実際はリンク テーブル (Payroll データベースの Employees テーブルにリンクされているテーブル) の場合、現在のインポート操作はリンク設定操作に置き換えられます。 操作の終了時には、元のソース テーブル (Payroll データベースの Employees) にリンクされたリンク テーブル (たとえば、Employees1) が表示されます。

    フィールドおよびレコードのスキップ

    テーブルまたはクエリのデータをインポートする場合は、特定のフィールドまたはレコードをスキップすることはできません。 ただし、テーブル内のレコードをインポートしない場合は、テーブル定義のみをインポートできます。

    リレーションシップ

    ソース テーブル間のリレーションシップをインポートできます。

    テーブル定義

    テーブル全体をインポートするか、テーブル定義のみをインポートするかを選ぶことができます。 定義のみをインポートする場合は、ソース テーブルと同じフィールドを持つ、データを含まないテーブルが作成されます。

    ルックアップ フィールド

    ソース テーブルのフィールドが別のテーブルまたはクエリの値を参照している場合、インポート先のフィールドで参照値を表示させるには、関連付けられているテーブルまたはクエリをインポートする必要があります。 関連付けられているテーブルまたはクエリをインポートしない場合は、インポート先のフィールドに参照 ID のみが表示されます。

    クエリ

    クエリはクエリまたはテーブルとしてインポートできます。 クエリをクエリとしてインポートした場合は、次に基になるテーブルをインポートする必要があります。

  3. ソース データベースを閉じます。 他のユーザーがそのデータベースを排他モードで開いていないことを確認します。

  4. インポート先のデータベースを開きます。 データベースが読み取り専用でないこと、またデータベースにオブジェクトとデータを追加するのに必要な権限があることを確認します。

    ソース データベースがパスワードで保護されている場合、インポート操作でそのデータベースをソースとして使うたびに、パスワードの入力を求めるメッセージが表示されます。

    注: データを新しいデータベースにインポートする場合は、インポート操作を開始する前に、テーブル、フォーム、レポートなどを含まない空のデータベースを作成しておく必要があります。

    このインポート操作では、既存のテーブルまたはオブジェクトに対する上書きや変更は行われません。 インポート先のデータベースにソース オブジェクトと同じ名前のオブジェクトが既に存在する場合は、インポート オブジェクト名に数字 (1、2、3、以下同様) が追加されます。 たとえば、Issues という名前のテーブルが既に存在するデータベースに Issues テーブルをインポートすると、インポートされたテーブルの名前は Issues1 になります。 Issues1 という名前が既に使われている場合、新しいテーブルの名前は Issues2 となります。

    ソース テーブルのレコードをインポート先のデータベースのテーブルに追加する場合は、インポート操作を実行するのではなく、追加クエリを使う必要があることに注意してください。追加クエリの詳細については、「追加クエリを使用してテーブルから他のテーブルにレコードを追加する」の記事を参照してください。

データをインポートする

  1. インポート ウィザードの場所は、Access のバージョンによって若干異なります。Access のバージョンに対応した手順を選択してください。

    • Access の最新の Office 365 サブスクリプション バージョンを使っている場合は、[外部データ] タブの [インポートとリンク] グループで、[新しいデータ ソース]、[データベースから]、[Access] の順にクリックします。

    • Access 2016、Access 2013、Access 2010 を使用している場合は、[外部データ] タブの [インポートとリンク] グループで、[Access] をクリックします。

    • Access 2007 を使用している場合は、[外部データ] タブの [インポート] グループで、[Access​​] をクリックします。

  2. [外部データの取り込み - Access ​​データベース] のインポート ウィザードおよびリンク ウィザードが開きます。

    外部データの取り込みのスクリーン​​ショット - Access ​​データベースのインポート ウィザード

  3. [ファイル名] ボックスにソース データベース名を入力するか、[参照] をクリックして [ファイルを開く] ダイアログ ボックスを表示します。

  4. [現在のデータベースにテーブル、クエリ、フォーム、レポート、マクロ、モジュールをインポートする] をオンにして、[OK] をクリックします。

    [オブジェクトのインポート] ダイアログ ボックスが開きます。

    [オブジェクトのインポート] ダイアログ ボックスでインポートするオブジェクトを選択します。

  5. [オブジェクトのインポート] ダイアログ ボックスの [テーブル] で、インポートするテーブルを選択します。クエリをインポートする場合は、[クエリ] タブをクリックして、インポートするクエリを選択します。

    選んだオブジェクトを取り消すには、もう一度オブジェクトをクリックします。

  6. [オプション] をクリックして追加の設定を指定します。

    以下の表に、各オプションがどのようにインポート結果に影響するかを示します。

    要素

    説明

    [リレーションシップ] チェック ボックス

    選んだテーブル間のリレーションシップをインポートする場合にオンにします。

    [メニューとツールバー] チェック ボックス

    ソース データベースに含まれるカスタム メニューとツール バーをインポートする場合にオンにします。 メニューとツール バーは [アドイン] タブに表示されます。

    [インポート/エクスポートの定義] チェック ボックス

    ソース データベースに含まれる保存済みのインポートまたはエクスポートの定義をインポートする場合にオンにします。

    [ナビゲーション ウィンドウ グループ] チェック ボックス

    ソース データベースに含まれるナビゲーション ウィンドウのカスタム グループをインポートする場合にオンにします。

    [テーブル構造とデータ]

    選んだすべてのテーブルの構造とデータをインポートする場合にクリックします。

    [テーブル構造のみ]

    選んだテーブルのフィールドのみをインポートする場合にクリックします。 ソース レコードはインポートされません。

    [クエリとしてインポート]

    選んだクエリをクエリとしてインポートする場合にクリックします。 この場合、クエリと共に基になるテーブルもすべてインポートする必要があります。

    [テーブルとしてインポート]

    クエリをテーブルとしてインポートする場合にクリックします。 この場合、基になるテーブルをインポートする必要はありません。

  7. [OK] をクリックし、操作を終了します。

    Access によって問題が検出された場合は、データがコピーされ、エラー メッセージが表示されます。オブジェクトのインポート操作が正常に完了すると、ウィザードの最後のページで、今後利用するために操作の詳細設定をインポート定義として保存できます。

別の Access データベースのデータへのリンクを設定する

リンク設定により、別のデータベースのデータにインポートすることなく接続することができ、リンク先とリンク元の両方のデータベースで同じデータの 2 つのコピーを作成して維持することなく、最新のデータを表示および修正できるようになります。 リンクできるのは、別の Access データベースにあるテーブルのみです。 クエリ、フォーム、レポート、マクロ、モジュールにはリンクできません。

Access データベースのテーブルへのリンクを設定すると、ソース レコードとフィールドへのリンクを維持する、リンク テーブルとも呼ばれる新しいテーブルが作成されます。 ソース データベースのデータに対して行われた変更は、リンク先のデータベースのリンク テーブルにも反映され、逆の場合も同様です。 ただし、リンク先のデータベースのリンク テーブルの構造を変更することはできません。 つまり、リンク テーブルに対して、フィールドの追加または削除やフィールドのデータ型の変更などの修正を行うことはできません。

別の Access データベースのデータにリンクを設定するには、次の手順を実行します。

  • リンクの設定の準備をする

  • リンク ウィザードを実行する

以下の手順では、各操作を実行する方法について説明します。

Access データベースのテーブルへのリンク設定を準備する

  1. ソース データベースを見つけます。

    MDB、MDE、ACCDB、または ACCDE 形式のファイルを使用できます。 ソース データベースがパスワードで保護されている場合は、リンク設定中にパスワードの入力を求めるメッセージが表示されます。

  2. リンク先のテーブルを特定します。テーブルにはリンクを設定できますが、クエリ、フォーム、レポート、マクロ、モジュールにはリンクを設定できません。初めて別の Access データベースでリンクを設定する場合は、以下の表の役立つヒントをご覧ください。

    要素

    説明

    複数のオブジェクト

    複数のテーブルへのリンクを 1 回のリンク設定操作で設定できます。 各ソース テーブルに対してリンク テーブルが作成されます。

    ソースとしてのリンク テーブル

    ソース データベースで既にリンク テーブルとなっているテーブルにリンクすることはできません。

    たとえば、リンクしようとしている Sales データベースの Employees1 テーブルが、実際には Payroll データベースの Employees テーブルにリンクされているリンク テーブルである場合は、Sales データベースの Employees1 テーブルをソース テーブルとして使うことはできません。 この場合は、Payroll データベースの Employees テーブルに直接リンクする必要があります。

    新規または既存のテーブル

    リンク設定操作ごとに、各ソース テーブルの新しいリンク テーブルが作成されます。 リンク設定操作で、既存のテーブルに対して上書きまたは追加を行うことはできません。

    リレーションシップ

    複数のソース テーブルを選んだ場合、テーブル間のリレーションシップは自動的にリンク先のデータベースに適用されます。 ただし、リンク先のデータベースでリレーションシップを変更したり削除したりすることはできません。

    ルックアップ フィールド

    ソース テーブルのフィールドが別のテーブルの値を参照している場合、リンク先のフィールドでもこの参照値を表示するには、関連付けられているテーブルへのリンクも設定する必要があります。 関連付けられているテーブルまたはクエリにリンクしない場合は、リンク先のフィールドに参照 ID のみが表示されます。

  3. ソース データベースを閉じます。 他のユーザーがそのデータベースを排他モードで開いていないことを確認します。

  4. リンク先のデータベースを開きます。 リンク先のデータベースが読み取り専用でないこと、またデータベースにオブジェクトとデータを追加するのに必要な権限があることを確認します。

    注: 新しいデータベースでリンクを作成する場合は、リンクの設定を開始する前に空のデータベース (テーブル、フォーム、またはレポートが含まれていないデータベース) を作成する必要があります。

    この操作では、既存のテーブルまたはオブジェクトに対する上書きや変更は行われません。 リンク先のデータベースにソース オブジェクトと同じ名前のオブジェクトが既に存在する場合は、リンク テーブル名に数字 (1、2、3、以下同様) が追加されます。 たとえば、Issue という名前のテーブルが既に存在するデータベースから Issues テーブルへのリンクを設定すると、リンク テーブル名は Issues1 となります。 Issues1 という名前が既に使われている場合、新しいテーブルの名前は Issues2 となります。

    ソース テーブルのレコードをリンク先のデータベースのテーブルに追加する場合は、リンク設定操作を実行するのではなく、追加クエリを使う必要があることに注意してください。

    追加クエリの詳細については、「追加クエリを使ってレコードをテーブルに追加する」の記事を参照してください。

データにリンクする

  1. リンク ウィザードの場所は、Access のバージョンによって若干異なります。Access のバージョンに対応する手順を選択してください。

    • Access の最新の Office 365 サブスクリプション バージョンを使っている場合は、[外部データ] タブの [インポートとリンク] グループで、[新しいデータ ソース]、[データベースから]、[Access] の順にクリックします。

    • Access 2016、Access 2013、Access 2010 を使用している場合は、[外部データ] タブの [インポートとリンク] グループで、[Access] をクリックします。

    • Access 2007 を使用している場合は、[外部データ] タブの [インポート] グループで、[Access​​] をクリックします。

  2. [外部データの取り込み - Access ​​データベース] のインポート ウィザードおよびリンク ウィザードが開きます。

    外部データの取り込みのスクリーン​​ショット - Access ​​データベースのインポート ウィザード

  3. [ファイル名] ボックスにソース データベース名を入力するか、[参照] をクリックして [ファイルを開く] ダイアログ ボックスを表示します。

  4. [リンク テーブルを作成してソース データにリンクする] をクリックし、[OK] をクリックします。

    [リンク テーブル] ダイアログ ボックスが開きます。

    [テーブルのリンク] ダイアログ ボックスでリンク先のテーブルを選択します。

  5. [テーブルのリンク] ダイアログ ボックスで、リンクするテーブルを選びます。

    選択を取り消すには、もう一度テーブルをクリックします。

  6. [OK] をクリックして操作を完了します。

    リンク テーブルが作成されます。

  7. データシート ビューでリンク テーブルを開き、データが正しく表示されることを確認します。

他に必要な情報はありますか?

ページの先頭へ

Office のスキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×