Buenos dias,
Encontre en el blog de davidsuarez un código con el cual poder pasar un sheet de excel a access y realmente va de maravilla, pero tengo un par de problemas que igual vosotros podeis echarme una mano, el código es el siguiente:
Código:
Call ImportadelExcel(fichero, App.Path & "\midb.mdb", "ImpExcel")
Código:
Sub ImportadelExcel(sFichero As String, DS As String, sTablaDestino As String)
Dim sTablaOrigen As String
Dim sConnect As String, sSQL As String
Dim cnnActiva As ADODB.Connection
' Establezco la conexión con la base de datos de Access,
' la cual será la base de datos "Activa"
Set cnnActiva = New ADODB.Connection
cnnActiva.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & DS & ";"
'Rango que quiero importar dela hoja Sheet1
sTablaOrigen = "[Sheet1$A1:C1500]"
' Importo la tabla a la base de datos "Activa"
sConnect = "'" & sFichero & "' 'Excel 8.0;HDR=Yes;'"
sSQL = "SELECT * INTO " & sTablaDestino & " FROM " & sTablaOrigen & " IN " & sConnect
cnnActiva.Execute sSQL
' Cierro la conexión
cnnActiva.Close
End Sub
Bueno, mis pequeños problemas són los siguientes, el primero, que lo que iria de maravilla es que cargara los datos en una tabla existente, es decir, añadiera los registros, en este caso, lo que hace es cargarla a una tabla nueva, y que no debe estar creada en la BBDD, (eso lo he solucionado desde Access con un insert to, pero me gustaria que fuera directo),
Por otro lado, hay un par de campos que són checkbox en Access (del tipo Sí/No), y no se cuales són los valores correctos para exportarlo a Access (Ture/false, 0/1, 1/-1...)
Y por último el rango a exportar, no siempre es el mismo, se podría buscar el último registro "automáticamente"?
Grácias de antemano,
Saludos,
Vicpal
PD: Parece que me he equivocado al postear en esta sección del foro, y ahora no puedo moverlo ni borrarlo....