Access2003、Access VBAでのテーブル作成
サンプルコードのメモ。
Sub MakeTable_Test() On Error GoTo Err_MakeTable_Test Dim db As Database Dim tbl As TableDef Dim fld As Field Dim idx As Index Set db = OpenDatabase(CurrentDb().Name) Set tbl = db.CreateTableDef("WORDS") '''''''''''''''''''''''''''''''' 'フィールド作成。 Set fld = tbl.CreateField("ID", dbLong) fld.Attributes = fld.Attributes + dbAutoIncrField 'オートナンバー。 tbl.Fields.Append fld Set fld = tbl.CreateField("HYOKI", dbMemo) tbl.Fields.Append fld Set fld = tbl.CreateField("YOMI", dbMemo) tbl.Fields.Append fld '''''''''''''''''''''''''''''''' 'インデックス作成。 '主キー。 Set idx = tbl.CreateIndex("ID") idx.Fields.Append idx.CreateField("ID", dbLong) idx.Primary = True '主キー。(「重複なし」となる) tbl.Indexes.Append idx 'インデックス(重複なし)。 Set idx = tbl.CreateIndex("HYOKI") idx.Fields.Append idx.CreateField("HYOKI", dbMemo) idx.Unique = True '重複なし。 tbl.Indexes.Append idx 'インデックス(重複あり)。 Set idx = tbl.CreateIndex("YOMI") idx.Fields.Append idx.CreateField("YOMI", dbMemo) tbl.Indexes.Append idx '登録。 db.TableDefs.Append tbl db.Close Exit Sub Err_MakeTable_Test: If Not db Is Nothing Then db.Close End If End Sub