RE:Como importar bd de access desde vb
Te adjunto aquí parte del código que uso para crear una bd Access y dentro de esta una tabla
de aquí podrás sacar tus conclusiones
Public Const provider = "Microsoft.Jet.OLEDB.4.0"
Public Function CreaBD(nbd As String)
Dim cat As ADOX.Catalog
Set cat = New ADOX.Catalog
If Dir(nbd) <> "" Then
Kill nbd
End If
cat.Create "Provider=" & provider & ";" & _
"Data Source=" & nbd & ";"
Set cat = Nothing
End Function
Public Function CrearTabla(bd As String)
Dim cat As ADOX.Catalog
Dim tbl As ADOX.Table
Set cat = New ADOX.Catalog
Set tbl = New ADOX.Table
'abriendo el catálogo
cat.ActiveConnection = "Provider=" & provider & ";" & _
"data source=" & bd & ";"
'creando la nueva tabla
With tbl
.Name = "tblAsistenciaDiaria"
.Columns.Append "idObra", adVarWChar, 8
.Columns.Append "CodTrab", adVarWChar, 10
.Columns.Append "Fec", adDate
.Columns.Append "horaEntradaReal", adDate
.Columns.Append "horaentrada", adDate
.Columns.Append "horasalida", adDate
.Columns.Append "horasalidareal", adDate
.Columns.Append "Enviado", adBoolean
.Columns("horaentradareal").Attributes = adColNullable
.Columns("horaentrada").Attributes = adColNullable
.Columns("horasalidareal").Attributes = adColNullable
.Columns("horasalida").Attributes = adColNullable
End With
cat.Tables.Append tbl
Set tbl = Nothing
Set cat = Nothing
End Function
Public Sub ExportarData(bd As String) 'función que exporta datos
'del registro de asistencia
Dim cnnResultado As ADODB.Connection
Dim rsint As ADODB.Recordset
Dim rsext As ADODB.Recordset
Set cnnResultado = New ADODB.Connection
With cnnResultado
.provider = provider
.CursorLocation = adUseClient
.ConnectionString = bd
.Open
End With
CrearConexion
Set rsint = New ADODB.Recordset
With rsint
.ActiveConnection = cnnunica.ConnectionString
.CursorLocation = adUseClient
.LockType = adLockOptimistic
.Source = "SELECT * FROM tblAsistenciaDiaria WHERE Enviado=0"
.Open
End With
If rsint.EOF And rsint.BOF Then
MsgBox "No existe información por exportar", vbInformation, "Aviso al usuario"
rsint.Close
Set rsint = Nothing
cnnunica.Close
cnnResultado.Close
Set cnnunica = Nothing
Set cnnResultado = Nothing
Exit Sub
End If
Set rsext = New ADODB.Recordset
With rsext
.ActiveConnection = cnnResultado.ConnectionString
.CursorLocation = adUseClient
.LockType = adLockOptimistic
.Source = "SELECT * FROM tblAsistenciaDiaria"
.Open
End With
Do Until rsint.EOF
With rsext
.AddNew
!idObra = rsint!idObra
!codtrab = rsint!codtrab
!Fec = rsint!Fec
!horaentrada = rsint!horaentrada
!horaentradareal = rsint!horaentradareal
!horasalida = rsint!horasalida
!horasalidareal = rsint!horasalidareal
!enviado = 0
.Update
End With
rsint!enviado = -1
rsint.Update
rsint.MoveNext
Loop
rsint.Close
rsext.Close
Set rsint = Nothing