テーブル情報を取得する
データベースのテーブル情報やフィールド情報を取得するには、ADOの拡張機能を使います。
ADOの拡張機能とは、ADOX(ActiveX Data Objects Extensions for Data Definition Language
and Security)と言います。
ADOXを使用するには、VBE画面で参照設定を行う必要があります。
Homeに戻る >
Excel データベースのTipsへ
実行画面
ADOXを利用する為には、VBE画面のメニューで「ツール」-「参照設定」を開き、「Microsoft ADO Ext.6.0 for DDL
and Security」(Excel2010の場合)をチェックします。
「テーブル情報を取得する」ボタンをクリックすると、E列にテーブル名、F列にそのテーブルに含まれるフィールド名が表示されます。
コード
Option Explicit
Private Sub CommandButton1_Click()
Dim db As ADODB.Connection
Dim cat As ADOX.Catalog
Dim tbl As ADOX.Table
Dim colm As ADOX.Column
Dim row As Long
'売上管理のACCDBファイルに接続します
Set db = New ADODB.Connection
db.Provider = "Microsoft.Ace.OLEDB.12.0"
db.Open "C:\MyHP\ExcelTips\顧客管理.accdb"
'Catalogオブジェクトを開く
Set cat = New ADOX.Catalog
cat.ActiveConnection = db
row = 2
'テーブル情報の取得
For Each tbl In cat.Tables
If tbl.Type = "TABLE" Then
Cells(row, 5) = tbl.Name
row = row + 1
'フィールド情報の取得
For Each colm In tbl.Columns
Cells(row, 6) = colm.Name
row = row + 1
Next
End If
Next
'終了処理
Set colm = Nothing
Set tbl = Nothing
Set cat = Nothing
Set db = Nothing
End Sub
Homeに戻る >
Excel データベースのTipsへ
■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します
Copyright (c) Excel-Excel ! All rights reserved