HOME > 即効テクニック > Excel VBA > その他関連のテクニック > エクセルユーザのデータベース活用法 - データベース(MDB)作成

即効テクニック

その他関連のテクニック

エクセルユーザのデータベース活用法 - データベース(MDB)作成

(Excel 2000)
MDBファイル、及びテーブルを作成するにはDAOやADOXを使用します。
サンプルではADOXを用いてテーブルを作成しインデックスの作成までを行います。

(前提)Microsoft ADO Ext. 2.1 For DDL and Securityの参照設定
Sub CreateDB()

Dim XCatalog As New ADOX.Catalog
Dim Tbl As New Table
Dim Idx As New ADOX.Index
Dim Conn As String

Conn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" _
    & ThisWorkbook.Path & "\テスト.mdb;"

'カタログの作成
XCatalog.Create Conn

'テーブルの作成
'  フィールド(列)の追加は・・・
'  [Columns.Append 列名 , データ型 ,列のサイズ(省略可)]

With Tbl
.Name = "テストテーブル"
.Columns.Append "コード", adInteger, 6 '数値型
.Columns.Append "名前", adWChar, 40 'テキスト型
.Columns.Append "金額", adCurrency '通貨型
.Columns.Append "日付", adDate '日付型
End With
'テーブルをコレクションに追加
XCatalog.Tables.Append Tbl

With Idx 'インデックスの作成
.Name = "idxCode"
.IndexNulls = adIndexNullsDisallow 'Nullを許容しない
.Columns.Append "コード" '列名の指定
.PrimaryKey = True '主キーに設定
.Unique = True '重複なしに設定
End With

'インデックスをコレクションに追加
Tbl.Indexes.Append Idx

End Sub