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

適用先
Access for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

ある Access データベースから別の Access データベースにデータを取り込むには、いくつかの方法があります。 コピーと貼り付けは最も簡単な方法ですが、インポートとリンクを使用すると、コピー先データベースに取り込むデータとその取り込み方法をより適切に制御できます。

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

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

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

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

データをインポートして、別のデータベースのテーブルに似たテーブルを作成することもできます。 テーブル全体またはテーブル定義だけをコピーして、各テーブルを手動で設計しないようにすることができます。 テーブル定義のみをインポートすると、空のテーブルが取得されます。 つまり、フィールドとフィールド プロパティはインポート先のデータベースにコピーされますが、テーブルのデータはコピーされません。 インポートのもう 1 つの利点は、コピーアンドペースト操作と比較して、テーブル間のリレーションシップをテーブル自体と共にインポートすることを選択できることです。

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

organizationで複数の Access データベースを使用しているが、従業員などの一部のテーブルでデータを共有する必要がある場合は、別の Access データベース内のデータにリンクすることが必要な場合があります。 各データベース内のテーブルを複製する代わりに、テーブルを 1 つのデータベースに保持し、他のデータベースからリンクすることができます。 これは、別のワークグループまたは部署がデータベース内のデータを追加して使用する必要があるが、テーブル構造を制御する必要がある場合にも役立ちます。

別の 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 のバージョンに対応した手順を選択してください。

    • [ 外部データ ] タブで Microsoft 365、Access 2021、または Access 2019 を使用している場合は、[ & リンクのインポート ] グループで[ 新しいデータ ソース>From Database>Access] をクリックします。
    • Access 2016を使用している場合は、[外部データ] タブの [& リンクのインポート] グループで、[アクセス] をクリックします。
  2. [外部データの取り込み - Access ​​データベース] のインポート ウィザードおよびリンク ウィザードが開きます。

    外部データの取得 - データベースへのアクセスのインポート ウィザードのスクリーンショット。

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

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

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

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

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

    選択したオブジェクトをクリアするには、もう一度クリックします。

  6. [オプション] をクリックして追加の設定を指定します。 次の表は、各オプションが操作の結果にどのように影響するかを示しています。

    要素 説明
    [リレーションシップ] チェック ボックス 選んだテーブル間のリレーションシップをインポートする場合にオンにします。
    [メニューとツールバー] チェック ボックス ソース データベースに含まれるカスタム メニューとツール バーをインポートする場合にオンにします。 メニューとツール バーは [アドイン] タブに表示されます。
    [インポート/エクスポートの定義] チェック ボックス ソース データベースに含まれる保存済みのインポートまたはエクスポートの定義をインポートする場合にオンにします。
    [ナビゲーション ウィンドウ グループ] チェック ボックス ソース データベースに含まれるナビゲーション ウィンドウのカスタム グループをインポートする場合にオンにします。
    [テーブル構造とデータ] 選んだすべてのテーブルの構造とデータをインポートする場合にクリックします。
    [テーブル構造のみ] 選んだテーブルのフィールドのみをインポートする場合にクリックします。 ソース レコードはインポートされません。
    [クエリとしてインポート] 選んだクエリをクエリとしてインポートする場合にクリックします。 この場合、クエリと共に基になるテーブルもすべてインポートする必要があります。
    [テーブルとしてインポート] クエリをテーブルとしてインポートする場合にクリックします。 この場合、基になるテーブルをインポートする必要はありません。
  7. [OK] をクリックし、操作を終了します。 Access によってデータがコピーされ、問題が発生した場合にエラー メッセージが表示されます。 インポートが成功した場合は、ウィザードの最後のページで操作の詳細をインポート仕様として保存して、後で使用できます。

リンクを使用すると、インポートせずに別のデータベース内のデータに接続できます。 これにより、同じデータの 2 つのコピーを作成および管理することなく、ソース データベースとコピー先データベースの両方で最新のデータを表示および変更できます。 リンクできるのは、別の Access データベースにあるテーブルのみです。 クエリ、フォーム、レポート、マクロ、モジュールにはリンクできません。

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

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

  • リンクの設定の準備をする
  • リンク ウィザードを実行する

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

  1. ソース データベースを見つけます。 ファイル形式は、 MDBMDEACCDB、または ACCDEできます。 ソース データベースがパスワードで保護されている場合は、リンク操作中にパスワードを入力するように求められます。

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

    要素 説明
    複数のオブジェクト 複数のテーブルへのリンクを 1 回のリンク設定操作で設定できます。 各ソース テーブルに対してリンク テーブルが作成されます。
    ソースとしてのリンク テーブル ソース データベースで既にリンク テーブルとなっているテーブルにリンクすることはできません。
    たとえば、リンクしようとしている Sales データベースの Employees1 テーブルが、実際には Payroll データベースの Employees テーブルにリンクされているリンク テーブルである場合は、Sales データベースの Employees1 テーブルをソース テーブルとして使うことはできません。 この場合は、Payroll データベースの Employees テーブルに直接リンクする必要があります。
    新規または既存のテーブル リンク設定操作ごとに、各ソース テーブルの新しいリンク テーブルが作成されます。 リンク設定操作で、既存のテーブルに対して上書きまたは追加を行うことはできません。
    リレーションシップ 複数のソース テーブルを選んだ場合、テーブル間のリレーションシップは自動的にリンク先のデータベースに適用されます。 ただし、リンク先のデータベースでリレーションシップを変更したり削除したりすることはできません。
    ルックアップ フィールド ソース テーブルのフィールドが別のテーブルの値を参照している場合、リンク先のフィールドでもこの参照値を表示するには、関連付けられているテーブルへのリンクも設定する必要があります。 関連付けられているテーブルまたはクエリにリンクしない場合は、リンク先のフィールドに参照 ID のみが表示されます。
  3. ソース データベースを閉じます。 排他モードでデータベースを開いているユーザーが他にいないことを確認します。

  4. リンク先のデータベースを開きます。 コピー先データベースが読み取り専用ではなく、オブジェクトとデータを追加するために必要なアクセス許可があることを確認します。

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

    操作によって、既存のテーブルまたはオブジェクトが上書きまたは変更されることはありません。 ソース オブジェクトと同じ名前のオブジェクトがコピー先データベースに既に存在する場合、Access はリンクされたテーブルの名前に数値 (1、2、3 など) を追加します。 たとえば、Issue という名前のテーブルが既にあるデータベースから Issues テーブルにリンクする場合、リンクされたテーブルの名前は Issues1 です。 Issues1 という名前が既に使用されている場合、新しいテーブルの名前は Issues2 です。 ソース テーブルのレコードをリンク先のデータベースのテーブルに追加する場合は、リンク設定操作を実行するのではなく、追加クエリを使う必要があることに注意してください。 追加クエリの詳細については、「追加クエリを使ってレコードをテーブルに追加する」を参照してください。

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

    • [ 外部データ ] タブで Microsoft 365、Access 2021、または Access 2019 を使用している場合は、[ & リンクのインポート ] グループで[ 新しいデータ ソース>From Database>Access] をクリックします。
    • Access 2016を使用している場合は、[外部データ] タブの [& リンクのインポート] グループで、[アクセス] をクリックします。
  2. [外部データの取り込み - Access ​​データベース] のインポート ウィザードおよびリンク ウィザードが開きます。

    外部データの取得 - データベースへのアクセスのインポート ウィザードのスクリーンショット。

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

  4. [リンク テーブルを作成してソース データにリンクする] をクリックし、[OK] をクリックします。 [リンク テーブル] ダイアログ ボックスが開きます。

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

  5. [テーブルのリンク] ダイアログ ボックスで、リンクするテーブルを選びます。 選択を解除するには、テーブルをもう一度クリックします。

  6. [OK] をクリックして操作を完了します。 リンク テーブルが作成されます。

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

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

ページの先頭へ