ACCESS テーブルにデータを追加する方法

テーブルにデータを追加する方法

ACCESSのデータは全てテーブルに格納されます。
テーブルに格納されたデータは、1行を1レコードと呼ばれます。

今回は、ACCESSでテーブルにデータを追加する方法をご紹介します。


こんにちは。
はこにわガジェット (@hakoniwagadget) です。

ACCESSを使った売上管理、顧客管理などのデータベース開発を行っています。
ACCESSは使いこなすために少しスキルが必要なものの、うまく活用すればExcelよりも業務の効率化が図れます。
この記事ではACCESSの基本的な使い方をご紹介していきます。

テーブルへのレコード追加方法

テーブルへレコードを追加する方法には、まず1件ずつ追加する方法と複数レコードを一括追加する方法があります。

1件ずつ追加する場合はデータ入力用フォームを作成し、そこから入力していきます。
詳しくは下記の記事をご覧ください。

データ入力用フォームの作成方法

1件ずつ追加する方法はまさにACCESSの基本ともいえる利用方法です。
ここではもう一つの、複数レコードを一括追加する方法をご紹介していきます。

複数レコードを一括追加する方法にも2通りあります。

追加クエリを利用する

VBAのADOで追加する

それぞれを紹介していきましょう。

追加クエリを利用する

追加クエリとは、ACCESSで作成できるクエリの一種で、特定のテーブルにレコードを追加することが可能なクエリです。

追加クエリはACCESSのメニューからクエリをデザインビューで開き、クエリの種類を「追加」に変えることで作成できます。

追加クエリでは、クエリの下段(デザイングリッド)にレコードの追加という行が表示され、ここで追加元のテーブル/クエリのどのフィールドを追加先のテーブルのどのフィールドに追加するかを設定します。

追加クエリの詳しい作成方法は以下の記事をご覧ください。

追加クエリの作成方法

VBAのADOで追加する

もう一つの方法は、VBAでADOを利用する方法です。
VBAに慣れてきた方は、VBAでレコードを追加しようと思って「あれ?レコードを追加するコマンドがない」と思われるかもしれません。

VBAでレコードの追加や更新、削除などを行うには、ADOを利用する必要があります。

ADO(ActiveX Data Objects)とはマイクロソフトが提供する、データベースを操作するための様々オブジェクトの集合体です。
ADOを使うことでデータベースの操作が可能です。

ADOでレコードを追加する際は以下のような記述を行います。


 レコードセット名.AddNew

 レコードセット名!フィールド名1 = 値1
 レコードセット名!フィールド名2 = 値2
 レコードセット名!フィールド名3 = 値3

 レコードセット名.Update

ADOの詳しい利用方法は以下の記事を参照ください。

ADOでレコードを追加する方法

追加クエリとADOの比較

では、追加クエリとADOはどのように使い分けるべきでしょうか。
以下に比較をまとめてみました。

追加クエリVBAのADO
設定の分かりやすいさ〇:GUIで操作できるのでわかりやすい×:コードを読み解く必要がある
柔軟性×:一定の条件でしか設定ができない〇:If文を使って条件によって追加する内容を変えるなど、柔軟に追加条件を設定できる

追加クエリの方が簡単ですが柔軟性が低く、逆にADOは少し難しいですが非常に柔軟な対応ができます。

私は通常はVBAで処理する際でも追加クエリをDoCmd.OpenQueryで実行する方法を使っています。
それでは対応できない、条件分岐などが複雑な場合にADOで対応するのが良いでしょう。

以上、テーブルにデータを追加する方法をご紹介しました。


ACCESSを使いこなせば、業務の効率化や自動化が実現できます。
しかし、自分でACCESSを学ぶには時間がない、難しそうで不安、という方も多いでしょう。

そんな時は、ACCESS開発歴20年以上、過去に100以上のACCESSデータベースを開発してきた私(@hakoniwagadget)にお任せください。

ACCESSの新規開発、既存のACCESSの修正、ACCESSの操作レッスンなど様々なサービスをご提供しています。
ご興味のある方は下記のサービス一覧をご覧ください。

サービス一覧

最後までお読みいただき、ありがとうございました。