Claro que sí, aquí un ejemplo, sacado de la página del GUILLE.
'------------------------------------------------------------------------------
' Conectar a una base de datos de SQL Server (08/Sep/04)
' y mostrar los campos de la tabla
'
' Para que este ejemplo funcione, necesitamos una referencia a:
' Microsoft ActiveX Data Objects 2.0 Library (o superior)
'
' ©Guillermo 'guille' Som, 2004
'------------------------------------------------------------------------------
Option Explicit
Private cnn As ADODB.Connection
Private rst As ADODB.Recordset
Private Sub cmdAbrir_Click()
Dim tField As ADODB.Field
'
' Por si ya estaba abierta...
Set cnn = Nothing
Set rst = Nothing
'
' Crear los objetos
Set cnn = New ADODB.Connection
Set rst = New ADODB.Recordset
'
' abrir la base usando las credenciales de Windows
cnn.Open "Provider=SQLOLEDB; " & _
"Initial Catalog=pubs; " & _
"Data Source=(local)NETSDK; " & _
"integrated security=SSPI; persist security info=True;"
'
' abrir el recordset indicando la tabla a la que queremos acceder
rst.Open "SELECT * FROM authors", cnn, adOpenDynamic, adLockOptimistic
'
' Asignar los nombres de los campos al combo
With cboCampos
.Clear
For Each tField In rst.Fields
.AddItem tField.Name
Next
.ListIndex = 0
End With
'
' Cerrar el recordset y la conexión
rst.Close
cnn.Close
'
End Sub
Salu2