A que tipo de base de datos querés conectarte : Access, a una planilla de excel....
Si es por ejemplo Access podés hacer lo siguiente
Primero generate un dsn con el contralador ODBC de la base de datos que vayas a uitilizar
with Activeworksheet.QueryTables.Add(Connection:="ODBC";DSN:=[nombre];[PWD:= si tiene]", Destination:=[generalmente Range("celda_destino"],sql:=[Aquí la consulta sql que desees Select, Insert, Update,etc..)
.refresh BackgroundQuery:=False
end with
Para que funcione bien sin que el programa continúe antes de recibir los datos cuando hagas el refresh el modificador de este que BackgruondQuery ponelo en falso. El refresh es verdaderamente cuando se produce la consulta sql.