Importar datos de las planillas electrónicas MS Excel con el formato de la versión 2007 en adelante (.xlsx) en SQL Server en sus versiones 2005 y 2008 sin el Service Pack 1 como mínimo instalado, notarán que no se puede realizar por el típico proceso, ya que no existe un proveedor ODBC para ésta versión.
No es un proceso complejo, y por suerte como nos tiene acostumbrados Microsoft con sus productos, es muy sencilla esta tarea. Iremos viendo unas capturas de pantalla para hacer más sencillo también el post.
Tenemos que elegir el proveedor de datos como Microsoft Office 12.0 Access Database Engine. En caso de no tener instalado lo puede descargar gratuitamente desde aquí.
Elegimos la planilla a importar
En la propiedad Extended Properties modificamos su valor
El valor será el siguiente
Con esto ya será suficiente, pueden testear la conexión y si todo da ok, proceden al mecanismo que ya conocen de la importación tradicional de datos.












en
en
en
y entonces cual es el codigo sql
pense que era algo asi pero creo q no..
declare @cadena varchar(2000) declare @cadena1 varchar(4000) declare @ruta varchar(1000) set @ruta = 'path\excel.xlsx' set @cadena='''Microsoft.Jet.OLEDB.4.0'',''Excel 8.0;IMEX=1;HDR=Yes;Database='+@ruta+''',''SELECT * FROM [Hoja1$]''' set @cadena1= 'insert into tabla SELECT * FROM OPENROWSET('+@cadena+')'..
espero su pronta respuesta..
declare @cadena varchar(2000)
declare @cadena1 varchar(4000)
declare @ruta varchar(1000)
set @ruta = ‘path\excel.xlsx’
set @cadena=”’Microsoft.Jet.OLEDB.4.0”,”Excel 8.0;IMEX=1;HDR=Yes;Database=’+@ruta+”’,”SELECT * FROM [Hoja1$]”’
set @cadena1= ‘insert into tabla SELECT * FROM OPENROWSET(‘+@cadena+’)’