• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:アクセス2000で作成したデータベースにテーブルを追加したいのです 「Set tbl = catDB.Tables![会費管理2]」 )

アクセス2000でデータベースにテーブルを追加する方法

このQ&Aのポイント
  • アクセス2000で作成したデータベースに新しいテーブルを追加する方法について説明します。
  • 具体的な手順としては、まず「Set tbl = catDB.Tables![会費管理2]」のコードを使用して新しいテーブルを作成し、そのテーブルに必要なフィールドを追加します。
  • 追加したフィールドの例としては、「数値1」という名前の整数型フィールド、 「数値2」という名前の整数型フィールド、 「数値3」という名前の整数型フィールド、 「日付」という名前の日付型フィールド、 「金額」という名前の通貨型フィールドなどがあります。

質問者が選んだベストアンサー

  • ベストアンサー
  • 30246kiku
  • ベストアンサー率73% (370/504)
回答No.2

大変申し訳ございません。 私の勉強不足と思います。 > Set tbl = catDB.Tables![会費管理2] テーブルが無い時点で、上記はエラーとなる気がします。 というより、 ![会費管理2] という記述したことが無いので、申し訳ありません。 私では解決できないと思いますので、他の方の回答を待ってください。 失礼いたしました。

ynet
質問者

お礼

ありがとうございます。

その他の回答 (1)

  • 30246kiku
  • ベストアンサー率73% (370/504)
回答No.1

提示されたコードの最後 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

ynet
質問者

補足

早速ありがとうございます。 実はデータファイルの指定があるのです。 当然![会費管理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]

関連するQ&A