Visual Basic Foro

Programación => Visual Basic 6 => Mensaje iniciado por: lucius en Marzo 11, 2014, 11:19:06 pm

Título: Leer archivo excel en vb sin importar version
Publicado por: lucius en Marzo 11, 2014, 11:19:06 pm
Hola pues cambiando la conexion para excel y aplicando if se podria armar algo pero tendran algo mas simple o generico donde pueda leer archivos excel en un grid sin importar la version.
Título: Re:Leer archivo excel en vb sin importar version
Publicado por: AxioUK en Marzo 12, 2014, 12:04:55 am
La verdad es bastante sencillo el acceder a los .xls ó .xlsx a traves de ADO, tratandolos como a una DB, solo deben referenciar "Microsoft ActiveX Data Object 2.8 Library" (msado28.tlb) y mediante código utilizan la siguiente String de conexión (deben tener instalado MSOffice 2007 - 2010 o Microsft Database Engine 2010, yo utilizo este último y lo incluyo en el instalador de la App):

Código: [Seleccionar]
strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & xlsxPath & ";Extended Properties='Excel 12.0 Xml;HDR=YES';Persist Security Info=False;"
en donde
xlsxPath : es la Variable que contiene la Ruta al archivo Excel
Extended Properties='Excel 12.0 Xml;HDR=YES : Indica que es un Excel 2007-2013, y HDR que la primera Fila contiene Encabezados de Columna.

Yo utilizo la misma String y puedo abrir indistintamente XLS como XLSX.

Saludos
Título: Re:Leer archivo excel en vb sin importar version
Publicado por: lucius en Marzo 12, 2014, 10:25:09 pm
Gracias voy a revisarlo.