ExcelWork.info

Excel(エクセル)のマクロ・VBA・関数・操作などのメモ

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

      2017/10/23

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


実行結果

ADOX テーブルの作成


サンプルVBAソース その2


実行結果

ADOX テーブルの作成



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


サンプルVBAソース


実行結果

ADOX テーブルを削除する



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


サンプルVBAソース


実行前

ADOX テーブルの作成


実行後

ADOX フィールドの削除



 - データベース , , , , , , , , , , , , , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

  関連記事

CopyFromRecordset メソッド
Recordset オブジェクトの内容をワークシートにコピーする(CopyFromRecordset メソッド・ADO)

CopyFromRecordset メソッド ADO の Recordset オ …

トランザクション01
トランザクション(ADO)BeginTrans、CommitTrans、RollbackTrans

ADO でのトランザクション処理 【書式】 Sub Sample_Transac …

Command.Execute Insert Into 文
SQL文を実行する(ADO)Execute メソッド

Command オブジェクトの Execute メソッドで、SQL文を実行 Co …

ADO Access (参照設定)
データベース(Access 等)に接続(ADO)

ADO で、データベースに接続 外部データベースを操作する方法のひとつに ADO …

ADOX データベース作成1
データベースを作成する(ADOX)

ADOX を使用してデータベース(Access)を作成 Catalog オブジェ …

Delete メソッド(ADO)
レコードの削除(ADO)Delete メソッド

データベースのレコードを削除する Delete メソッド カレントレコードを削除 …

RecordCount プロパティ(ADO)
Recordset オブジェクト内のレコード数(ADO)RecordCount プロパティ

RecordCount プロパティ Recordset オブジェクトのレコード数 …

DB Class Excel へ接続
Excel VBA のクラスを使ってデータベースへ接続する(ADO)

データベースの処理をクラスモジュールに書く ExcelVBAで、クラス使用する方 …

Update メソッド(ADO)
レコードの更新(ADO)Update メソッド

データベースのレコードを更新する Update メソッド カレントレコードの内容 …

データベース(SQLServer)接続
データベース(SQL Server)に接続する(ADO)

データベース(SQL Server)に接続 ODBC または OLE DB で接 …