ExcelWork.info

テーブルの作成・削除/フィールドの作成・削除(ADOX)

ADOX を使用してテーブル・フィールド(列)を作成・削除

Table オブジェクト

【書式】

<CreateObject 関数を使用する場合>
Dim tbl As Object
Set tbl = CreateObject(“ADOX.Table”)

<参照設定を行う場合>
Dim tbl As ADOX.Table
Set tbl = New ADOX.Table


参照設定を行うライブラリファイルについて


Microsoft ADO Ext.6.0 for DDL and Security を選択します。ただし、Office 等のバージョンにより、ADOX のバージョンも異なります。参照設定の方法については、ファイルシステムオブジェクト(FileSystemObject)の使い方 を参照してください。

CreatObject 関数 を使用する場合は、参照設定の必要はありませんが、VBE で、自動メンバ表示等のコーディング支援機能が使用できません。また、マクロの実行速度も遅くなります。



Name プロパティ

【書式】

object.Name


引数・戻り値

  • object  ・・・  対象となる Table オブジェクトを指定します。

テーブル名を表す文字列型(String)の値を取得および設定します。



Columns コレクション

【書式】

object.Columns

<フィールド(列)を作成>
object.Columns.Append Column [, Type, DefineSize ]

<フィールド(列)を削除>
object.Columns.Delete Column


引数・戻り値

  • object  ・・・  対象となる Table オブジェクトを指定します。
  • Column  ・・・  フィールド(列)名を表す文字列型(String)の値を指定します。(省略不可)
  • Type  ・・・  フィールド(列)のデータ型を以下の定数または値で指定します。(省略可)
    定数 データ型
    adSmallInt 2 整数型
    adInteger 3 長整数型
    adSingle 4 単精度浮動少数点型
    adDouble 5 倍精度浮動少数点型
    adCurrency 6 通貨型
    adDate 7 日付時刻型
    adBoolean 11 ブール型
    adGUID 72 オートナンバー型
    adVarWChar 202 テキスト型
    adLongVarWChar 203 メモ型

  • DefineSize  ・・・  フィールド(列)のサイズを表す長整数型(Long)の値を指定します。(省略可) ※ Type がテキスト型やメモ型の場合、サイズを指定します。


Tables コレクション

【書式】

object.Tables

<新規テーブルの作成>
object.Tables.Append Table

<テーブルの削除>
object.Tables.Delete Table


引数・戻り値

  • object  ・・・  対象となる Catalog オブジェクトを指定します。
  • Table  ・・・  作成または削除するテーブル名を表す文字列型(String)の値を指定します。


ADOX を使用してテーブルを作成する例


サンプルVBAソース その1


実行結果


サンプルVBAソース その2


実行結果



ADOX を使用してテーブル(Access)を削除する例


サンプルVBAソース


実行結果



ADOX を使用してフィールド(列)を削除


サンプルVBAソース


実行前


実行後