- ベストアンサー
アクセス2000でデータベースにテーブルを追加する方法
- アクセス2000で作成したデータベースに新しいテーブルを追加する方法について説明します。
- 具体的な手順としては、まず「Set tbl = catDB.Tables![会費管理2]」のコードを使用して新しいテーブルを作成し、そのテーブルに必要なフィールドを追加します。
- 追加したフィールドの例としては、「数値1」という名前の整数型フィールド、 「数値2」という名前の整数型フィールド、 「数値3」という名前の整数型フィールド、 「日付」という名前の日付型フィールド、 「金額」という名前の通貨型フィールドなどがあります。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
大変申し訳ございません。 私の勉強不足と思います。 > Set tbl = catDB.Tables![会費管理2] テーブルが無い時点で、上記はエラーとなる気がします。 というより、 ![会費管理2] という記述したことが無いので、申し訳ありません。 私では解決できないと思いますので、他の方の回答を待ってください。 失礼いたしました。
その他の回答 (1)
- 30246kiku
- ベストアンサー率73% (370/504)
提示されたコードの最後 cnn.Close が気になりますが、 自分のmdb 上に作るものとして、変数宣言部分も入れると、以下の様になるのでしょうか。 テーブル「会費管理2」は、ないものとして作成するものになります。 Private Sub Sample1() Dim cnn As ADODB.Connection Dim catDB As ADOX.Catalog Dim tbl As ADOX.Table Dim colAdo As ADOX.Column Set cnn = CurrentProject.Connection Set catDB = New ADOX.Catalog catDB.ActiveConnection = cnn Set tbl = New ADOX.Table tbl.Name = "会費管理2" Set colAdo = New ADOX.Column With colAdo .Name = "数値1" .Type = adInteger .Attributes = adColNullable End With tbl.Columns.Append colAdo Set colAdo = New ADOX.Column With colAdo .Name = "数値2" .Type = adInteger .Attributes = adColNullable End With tbl.Columns.Append colAdo Set colAdo = New ADOX.Column With colAdo .Name = "数値3" .Type = adInteger .Attributes = adColNullable End With tbl.Columns.Append colAdo Set colAdo = New ADOX.Column With colAdo .Name = "日付" .Type = adDate .Attributes = adColNullable End With tbl.Columns.Append colAdo Set colAdo = New ADOX.Column With colAdo .Name = "金額" .Type = adCurrency .Attributes = adColNullable End With tbl.Columns.Append colAdo catDB.Tables.Append tbl catDB.Tables.Refresh RefreshDatabaseWindow Set colAdo = Nothing Set tbl = Nothing Set catDB = Nothing Set cnn = Nothing End Sub
補足
早速ありがとうございます。 実はデータファイルの指定があるのです。 当然![会費管理2]のテーブルはありません。 下記に一部を書き込みしますが、可能かしら? お手数おかけいたします。感謝いたします。 Private Sub コマンド1_Click() Beep If (MsgBox("データをアップデートしますが宜しいですか? 作業は一瞬で終わりますよ!!") = 7) Then End If Dim cnn As New ADODB.Connection Dim catDB As New ADOX.Catalog Dim colAdo As ADOX.Column Dim tbl As ADOX.Table Dim strCon As String Dim lIdx As Long strCon = "Provider=Microsoft.Jet.OLEDB.4.0;" strCon = strCon & "Data Source=c:\ynet\Hz2data1.mdb" cnn.Open strCon catDB.ActiveConnection = cnn Set tbl = catDB.Tables![会費管理2]
お礼
ありがとうございます。