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を許容しない
.PrimaryKey = True '主キーに設定
.Unique = True '重複なしに設定
End With
'インデックスをコレクションに追加
Tbl.Indexes.Append Idx
End Sub
|