ヘルプの森~Excel・Access・Office全般ヘルプデスクサイト

No.002

テーブルにフィールドを追加、データ型を設定するマクロ 《SQLの実行》

2003/2007/2010/2013/2016

テーブルにフィールドを追加し、データ型を設定する動作をマクロで作りたい、というお問い合わせです。

フィールドを追加するような動作は、データ定義クエリで作成することができます。
ならば、データ定義クエリを作成しておいて、マクロでは、その[クエリを開く]アクションでそのデータ定義クエリを実行させることでも可能です。

しかしせっかくですから、デー定義クエリを作らずマクロ一発でできるようにしましょう。

としますと、[SQLの実行]アクションを使用します。
[SQLの実行]アクションは、[マクロ ツール]-[デザイン]タブ-[表示/非表示]グループの[すべてのアクションを表示]ボタンをオンにして指定してください。

[SQLの実行]アクションは、引数に指定されたSQLを実行しますので、データ定義クエリで指定するSQLと同じ記述を設定します。

フィールド追加は、追加フィールド名の後にデータ型を指定します。

  alter table テーブル名 add column 追加フィールド名 データ型

複数フィールドを追加する場合は、カンマの後に続けて指定します。
そして、データ型は次のとおりです。

  • テキスト型 …text
  • 数値型 …number
  • 通貨型 …currency
  • 日付/時刻型 …date
  • オートナンバー型 …counter

では、テーブル[テーブル1]にフィールド[あああ]をテキスト型、フィールド[いいい]を数値型で追加するというマクロを作ってみましょう。

  アクション: [SQLの実行]
  引数:
   [SQLステートメント] …
     alter table テーブル1 add column あああ text,いいい number;

[SQLの実行]アクションの詳細は、Microsoftのサポートページ「RunSQL マクロ アクション」をご参照ください。

twitter hatena line pocket

関連ヘルプ

入力データを取り消すときの「ESC」キーを押すのと同じマクロは 《キー送信・メニューコマンドの実行》
データベース自身を最適化するマクロを作るには