Importar a Access una Hoja Excel
Tengo el libro libro1.xls con la hoja denominada CAMPO
Esta hoja la quiero importar a una base Access.
Yo lo hago con el siguiente codigo pero no funciona:
Private Sub ActualizarBase()
Dim sTablaOrigen As String, sTablaDestino As String
Dim sConnect As String, sSQL As String
Dim cnnExterna As New ADODB.Connection
sexcelfilename="C:PruebaLibro1.xls"
' Establezco la conexión con la base de datos externa
cnnExterna.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & sExcelfileName & ";" & _
"Extended Properties=""Excel 8.0;HDR=Yes;"""
sTablaDestino = "NOVEDAD"
sTablaOrigen = "[CAMPO]"
' Exporto la tabla a una base de datos Access
sConnect = "C:Pruebadb1.mdb"
sSQL = "SELECT * INTO " & sTablaDestino & " IN " & sConnect & " FROM " _
& sTablaOrigen
cnnExterna.Execute sSQL
' Cierro la conexión
cnnExterna.Close
End Sub
Me arroja el error de que necesita una tabla, no comprendo el problema, si alguien sabe como hacerlo, muy agradecida
Esta hoja la quiero importar a una base Access.
Yo lo hago con el siguiente codigo pero no funciona:
Private Sub ActualizarBase()
Dim sTablaOrigen As String, sTablaDestino As String
Dim sConnect As String, sSQL As String
Dim cnnExterna As New ADODB.Connection
sexcelfilename="C:PruebaLibro1.xls"
' Establezco la conexión con la base de datos externa
cnnExterna.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & sExcelfileName & ";" & _
"Extended Properties=""Excel 8.0;HDR=Yes;"""
sTablaDestino = "NOVEDAD"
sTablaOrigen = "[CAMPO]"
' Exporto la tabla a una base de datos Access
sConnect = "C:Pruebadb1.mdb"
sSQL = "SELECT * INTO " & sTablaDestino & " IN " & sConnect & " FROM " _
& sTablaOrigen
cnnExterna.Execute sSQL
' Cierro la conexión
cnnExterna.Close
End Sub
Me arroja el error de que necesita una tabla, no comprendo el problema, si alguien sabe como hacerlo, muy agradecida
Le confieso que me parece interesante esta forma de copiar tablas. Podría usted proveerme de algún tutorial o algo parecido con respecto al tema?
En cuanto a su problema, está seguro de que la tabla llamada NOVEDAD existe en la base de datos? Es lo único que se me ocurre, claro está, sin conocer los detalles de este tipo de proceso, como dije anteriormente.
En cuanto a su problema, está seguro de que la tabla llamada NOVEDAD existe en la base de datos? Es lo único que se me ocurre, claro está, sin conocer los detalles de este tipo de proceso, como dije anteriormente.
Ya descubrí el error. Me puse a experimentar con Access y encontré la solución: El nombre de la base de datos externa debe encerrarse entre comillas simples.
sSQL = "SELECT * INTO " & sTablaDestino & " IN '" & sConnect & "' FROM " _
& sTablaOrigen
sSQL = "SELECT * INTO " & sTablaDestino & " IN '" & sConnect & "' FROM " _
& sTablaOrigen
Perdón pero no entiendo como, podrias aclararmelo por favor.
Disculpa la molestia
Disculpa la molestia
