Prueba así:
Private Sub UserForm_Initialize()
Dim cnn As ADODB.Connection
Dim rst As ADODB.Recordset
Dim sql As String
Set cnn = New ADODB.Connection
Set rst = New ADODB.Recordset
'Realizamos la conexión con la base de datos de Access
With cnn
.Provider = "Microsoft.ACE.OLEDB.12.0"
.ConnectionString = "data source=" & ThisWorkbook.Path & "\Ejemplo.accdb"
.Open
End With
sql = "Select Nombre From Directorio"
With rst
.CursorLocation = adUseClient
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
.Open sql, cnn, , , adCmdText
End With
Do Until rst.EOF
ComboBox1.AddItem rst!Nombre
rst.MoveNext
Loop
End Sub
No olvides que en este caso: El archivo Access (*.accdb) está en la misma carpeta que el archivo Excel; el campo se llama "Nombre"; la tabla se llama "Directorio", el Combobox está en un "Userform" y por eso usamos el evento "Initialize". Debes activar la referencia (de VBA) "Microsoft ActiveX Data Objects 2.8 Library" (el 2.8 puede ser 2.6 en tu caso - u otro)
Comentas
Abraham Valencia
Me fue útil - Adriel Ortiz Mangia