No.002

ac テーブルの複数フィールドのデータ型をまとめて変更する

Access2003/2007/2010/2013/2016

1つのフィールドのデータ型を変更するならばデータ定義クエリを使って処理することができます。構文は次のとおりです。

  ALTER TABLE テーブル名 ALTER COLUMN フィールド名 データ型;

データ型の指定は次のとおりです。

例えば、テーブルインポート時にいつも、複数フィールドまとめて自動でデータ型を変更、となるとマクロもしくはVBAをが便利です。

マクロで作成する場合は、アクション[SQLの実行]に上記記述を設定しますが、複数フィールドの場合は、その数分のアクション[SQLの実行]を作成して実行すればいいと思います。

VBAを使用する場合は、次のような記述です。
テーブル1のフィールド[あああ]を日付/時刻型に、テーブル2のフィールド[いいい]をテキスト型にします。

  CurrentDb.Execute "ALTER TABLE テーブル1 ALTER COLUMN あああ DATE"
  CurrentDb.Execute "ALTER TABLE テーブル2 ALTER COLUMN いいい TEXT"

たくさんのフィールドがある場合は、VBAが便利でいいですね。

さて、テキスト型に設定して実行した場合、フィールドサイズが「255」でできあがります。
フィールドサイズも含めて設定したい場合、「TEXT(25)」または「CHAR(25)」のように数値を指定します。

関連ヘルプ

AccessからExcelを操作する 《CreateObject》

サイト内検索

Accessのカテゴリ

ヘルプの森

Excel・Access・Office全般
ヘルプデスク サイト
Google ヘルプるん
詳しくは site map ページ