Ver Mensaje Individual
  #2 (permalink)  
Antiguo 12/02/2008, 09:54
Avatar de maderic_m
maderic_m
 
Fecha de Ingreso: agosto-2007
Mensajes: 53
Antigüedad: 17 años, 8 meses
Puntos: 0
Re: leer xlsx (Excel 2007) con asp

Encontre una solucion, lo que hay que hacer es instalar estos drivers http://http://www.microsoft.com/downloads/details.aspx?FamilyID=7554F536-8C28-4598-9B72-EF94E038C891&displaylang=en , si estas trabajando en un entorno local, no es complicado, pero si trabajas con un web hosting tendras que pedirlo a la mesa de soporte si te los puede instalar, ya que depende del plan contratado no se va a poder acceder a instalarlos, una ves instalado se usa el siguiente codigo:

Código:
sFilePath = server.MapPath("upload/"&archivo) 'path del archivo xls
sDataDir = server.MapPath("upload") 'path de directotio que lo contiene
sSheetName = "Hoja1" ' nombre de la hoja donde estan los registros

sFileConnectionString = "Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ="&sFilePath&";DefaultDir="&sDataDir&";"
sFileSQL = "SELECT * FROM [" & sSheetName & "$]"
set oFileCN = server.createobject("ADODB.Connection") 'creo objeto adodb
oFileCN.Open sFileConnectionString 'abro el exel
set oFileRS = oFileCN.Execute(sFileSQL) 'selecciono los registros
if not oFileRS.EOF then 'si es distinto de EOF obtengo un array con los valores de las columnas
				aSourceData = oFileRS.getRows() ' asigna las filas a la variable aSourceData 
end if

oFileRS.Close
set oFileRS = nothing
oFileCN.Close
set oFileCN = nothing
espero que les sea de ayuda, saludos

Última edición por maderic_m; 12/02/2008 a las 11:02 Razón: corregir url