Setting the ActiveConnection property to a valid, open connection "opens" the catalog. From an open catalog, you can access the schema objects contained within that catalog.
' BeginOpenConnectionVB Sub OpenConnection() On Error GoTo OpenConnectionError Dim cnn As New ADODB.Connection Dim cat As New ADOX.Catalog cnn.Open "Provider='Microsoft.Jet.OLEDB.4.0';" & _ "Data Source= 'c:\Program Files\Microsoft Office\" & _ "Office\Samples\Northwind.mdb';" Set cat.ActiveConnection = cnn Debug.Print cat.Tables(0).Type 'Clean up cnn.Close Set cat = Nothing Set cnn = Nothing Exit Sub OpenConnectionError: Set cat = Nothing If Not cnn Is Nothing Then If cnn.State = adStateOpen Then cnn.Close End If Set cnn = Nothing If Err <> 0 Then MsgBox Err.Source & "-->" & Err.Description, , "Error" End If End Sub ' EndOpenConnectionVB
Setting the ActiveConnection property to a valid connection string also "opens" the catalog.
' BeginOpenConnection2VB Sub Main() On Error GoTo OpenConnectionWithStringError Dim cat As New ADOX.Catalog cat.ActiveConnection = "Provider='Microsoft.Jet.OLEDB.4.0';" & _ "Data Source='c:\Program Files\Microsoft Office\" & _ "Office\Samples\Northwind.mdb';" Debug.Print cat.Tables(0).Type 'Clean up Set cat.ActiveConnection = Nothing Exit Sub OpenConnectionWithStringError: Set cat = Nothing If Err <> 0 Then MsgBox Err.Source & "-->" & Err.Description, , "Error" End If End Sub ' EndOpenConnection2VB
ActiveConnection Property | Catalog Object | Table Object | Tables Collection | Type Property (Table)