リンクユニット

Office 2019 Access 2019

テーブル・クエリなどのオブジェクトをコピーして活用する

投稿日:2020年9月1日 更新日:

Accessの1つのデータベース内でテーブルやクエリ、フォーム、レポートなどのオブジェクトをコピーする方法です。

コピーボタンや貼り付けボタンを使用したり、右クリックのショートカットメニューなどで操作しますが、テーブルをコピーして貼り付ける場合は、[テーブルの貼り付け]ダイアログボックスが表示されます。

[テーブルの貼り付け]ダイアログボックスの貼り付けの設定には、3つの選択肢がありますので、目的に合わせて選択します。

[テーブルの貼り付け]ダイアログボックス

また、クエリのコピーを作成した後、テーブルのみを変更したいという場合もあると思います。クエリでテーブルを変更する方法も紹介します。

参考他のデータベースのテーブルやクエリを取り込む方法は、以下の記事で解説しています。

Accessのテーブルなどのオブジェクトをインポート(外部データの取り込み)

Accessで作成したデータベースが複数あり、1つのデータベースに他のデータベースのテーブルをインポートする方法です。 [外部データ]タブの ...

続きを見る

オブジェクトのコピーと貼り付け


ナビゲーションウィンドウのテーブルやクエリ、フォーム、レポートなどをコピーして活用したい場合は、通常の使い慣れたコピーと貼り付けの方法で構いません。

ただ、テーブルだけは、[テーブルの貼り付け]ダイアログボックスが表示されます。

オブジェクトのコピー

ナビゲーションウィンドウでコピーしたいオブジェクトを選択して、[ホーム]タブの[クリップボード]グループにある[コピー]ボタンをクリックします。

ここでは、テーブル[T_売上]を選択してコピーします。

[ホーム]タブの[クリップボード]グループにある[コピー]ボタン

参考コピーする方法は、右クリックのショートカットメニューから[コピー]をクリックしてもいいですし、ショートカットキー[Ctrl]+[C]を使っても同じです。

テーブルの以外のクエリやフォーム、レポートなども同じ操作でコピーできます。

右クリックのショートカットメニューから[コピー]を選択

オブジェクトの貼り付け

貼り付ける場合は、[ホーム]タブの[クリップボード]グループにある[貼り付け]ボタンをクリックします。

[ホーム]タブの[クリックボード]グループにある[貼り付け]ボタン

参考ナビゲーションウィンドウで右クリックしてショートカットメニューから[貼り付け]をクリックしてもいいですし、ショートカットキー[Ctrl]+[V]を使用しても同じです。

右クリックする場合は、ナビゲーションウィンドウ内で行います。

右クリックしてショートカットメニューから[貼り付け]をクリック

テーブルの場合は、[テーブルの貼り付け]ダイアログボックスが表示され、3つの選択肢が表示されます。

[テーブルの貼り付け]ダイアログボックス

テーブル以外のクエリ、フォーム、レポートなどの場合は、[貼り付け]ダイアログボックスが表示されますので、任意の名前を入力して[OK]ボタンをクリックします。

[貼り付け]ダイアログボックス

[テーブルの貼り付け]ダイアログボックス

テーブルをコピーして貼り付けると、[テーブルの貼り付け]ダイアログボックスが表示されます。

貼り付けるテーブルの設定を3つの選択肢から選択できるようになっています。既定は[テーブル構造とデータ]が選択されています。

  • テーブル構造のみ
  • テーブル構造とデータ
  • 既存のテーブルにデータを追加

[テーブルの貼り付け]ダイアログボックス

テーブル構造のみ

[テーブル構造のみ]を選択した場合は、テーブルのデザインのみを貼り付けます。データ(レコード)は貼り付けられません。

以下は、[テーブル構造のみ]を選択して作成したテーブルです。

テーブルの名前は、[T_売上(テーブル構造のみ)]としています。

テーブルをデータシートビューで表示すると、レコードはありません。

参考ここでは、オブジェクトの表示は[ウィンドウを重ねて表示する]の設定にしています。

[タブ付きドキュメント]と[ウィンドウを重ねて表示する]の違い

Access2007以降、オブジェクトを表示すると、タブ付きウィンドウで表示されるようになっています。従来からAccessを使用している方に ...

続きを見る

[テーブル構造のみ]を選択して作成したテーブルのデータシートビュー

テーブルをデザインビューで表示すると、テーブル[T_売上]と同じです。

[テーブル構造のみ]を選択して作成したテーブルのデザインビュー

参考オートナンバーを振り直したいという時もテーブル構造のみをコピーして使用します。

追加クエリを使ったオートナンバー型フィールドの番号の振り直し

オートナンバー型のあるテーブルでレコードを削除すると、欠番が出てしまいます。 Accessにとっては問題はなくても、見た目としては1から綺麗 ...

続きを見る

テーブル構造とデータ

テーブルの構造とデータ(レコード)がすべて貼り付けられます。テーブルの名前が異なるだけで、まったく同じ内容のテーブルになります。

以下は、[テーブル構造とデータ]を選択して作成したテーブルです。

テーブルの名前は、[T_売上(テーブル構造とデータ)]としています。

テーブルをデータシートビューで表示すると、すべてのレコードがコピーされています。

[テーブル構造とデータ]を選択して作成したテーブルのデータシートビュー

デザインビューで開いても、同じ構造となっています。

[テーブル構造とデータ]を選択して作成したテーブルのデザインビュー

既存のテーブルにデータを追加

既存のテーブルにデータ(レコード)を追加します。

ただし、構造が異なる場合は貼り付けできません。貼り付け先のテーブルに主キーが設定されている場合も、キー違反のメッセージがウィンドウが表示されることがあります。

貼り付け先のテーブルが以下のように、テーブル[T_売上]と同じ構造で、[ID]のインデックスも[重複あり]のようなテーブルであれば、問題ありません。

また、貼り付け先のテーブルの構造が同じで、レコードがないテーブルのような場合も問題ありません。

以下の[T_売上sample]のレコードは10件です。

テーブルのデザインビュー

[テーブルの貼り付け]ダイアログボックスで、[既存のテーブルにデータを追加]を選択して、[テーブル名]のテキストボックス内には、貼り付け先のテーブル名を入力して[OK] ボタンをクリックします。

[テーブルの貼り付け]ダイアログボックスで[既存のテーブルにデータを追加]を選択

以下のように既存のテーブルのデータ(レコード)にデータのみが貼り付けられます。レコードが追加されます。

[既存のテーブルにデータを追加]を選択して貼り付けしたテーブル

参考テーブルにレコードを追加するには、追加クエリを使用する方法もあります。[テーブルの貼り付け]では単純なレコードの貼り付けですが、[追加クエリ]では抽出条件などを設定することができます。

追加クエリの作成方法(追加先テーブルのフィールドへ特定の値を表示)

1つのテーブルに別のテーブルのレコードを追加する方法です。 3個テーブルがあって、各テーブルのフィールド名は同じです。 ここでは例として、テ ...

続きを見る

クエリのテーブル変更

クエリもコピーして使用することができます。

クエリの場合は、デザイングリッドのフィールドはそのままで、テーブルを別のテーブルに変更したいという場合もあると思います。その場合の方法です。

以下のクエリ[Q_売上一覧_2010年]は、クエリ[Q_売上一覧_2009年]をコピーして作成したものです。

クエリのフィールドはそのままにして、テーブルだけを変更します。

コピーして作成したクエリ

テーブルの追加

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

[デザイン]タブの[テーブルの追加]ボタン

または、クエリウィンドウで右クリックして、ショートカットメニューから[テーブルの追加]をクリックします。

クエリウィンドウで右クリックして[テーブルの表示]を選択

[テーブルの表示]ダイアログボックスが表示されます。

[テーブル]タブから[T_売上_2010年]を選択して、[追加]ボタンをクリックします。

[テーブルの表示]ダイアログボックス

以下のように、テーブル[T_売上_2010年]が追加されます。

デザイングリッドのテーブルを変更

デザイングリッドの[テーブル]の▼ボタンをクリックすると、クエリウィンドウに表示しているテーブルがすべて表示されますので、[T_売上_2010年]を選択していきます。

[T_売上_2009年]となっているフィールドは、すべて[T_売上_2010年]にします。

デザイングリッドでテーブルを変更

デザイングリッドのテーブルをすべて変更したら、クエリウィンドウの[T_売上_2009年]を削除します。

フィールドリストで右クリックして、ショートカットメニューから[テーブルの削除]をクリックします。

注意デザイングリッドのテーブル名を変更した後に、不要になったテーブルを削除します。

クエリウィンドウのテーブルを削除

これで、完成です。

テーブルを変更したクエリ

参考クエリウィンドウのテーブル間の結合線は、テーブル間でリレーションシップと参照整合性を設定しているため自動で表示されます。

リレーションシップの作成と参照整合性の設定

Accessでは、複数のテーブルがあって、そのテーブル間の共通フィールドを関連付けることができます。この関連付けのことを[リレーションシップ ...

続きを見る

フィールドが多い場合

デザイングリッドのフィールドが多いと、テーブル名を変更していくのも面倒です。

こういう場合は、クエリを[SQLビュー]で表示して、SQL文のテーブル名だけを置換すると早いです。

SQL文をすべてコピーします。

クエリの[SQLビュー]でSQL文をコピー

メモ帳などにSQL文を貼り付け、テーブル名だけを置換します。そして、置換後のコードをコピーして[SQLビュー]に貼り付けます。

メモ帳でテーブル名を置換

デザインビューに切り替えると、デザイングリッドのテーブルが変更されているのを確認できると思います。

テーブルが変更されたクエリのデザインビュー

Profile

執筆者/はま

もっと理解したいあなたへ

おすすめ記事と広告

-Office 2019 Access 2019

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

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