Programación General > Visual Basic para principiantes

 leer excel desde vb 6

(1/1)

santos el sinaloa:
Hola a todos mi nombre es Santos soy nuevo en este foro y necesoto ayuda, soy estudiante de informatica y en la actualidad estoy tratando de desarrollar un sistema en vb 6, para este trabajo necesito trabajar con bases de datos, mi problema es que toda la informacion que el sistema manejara se encuentra actualmente en archivos de excel y necesito leerlos desde el programa ya lo intente basandome en algunos ejem`plos que en contre en Google utilizando ADO pero no me a resultado.

espero puedan ayudarme. saludos y gracias.

ferhn:
Proba con este codigo aqui esta explicado todo...

--- Código: Text --- Private Sub LeerExcel() Dim xlApp As Excel.ApplicationDim xlLibro As Excel.WorkbookDim xlHoja As Excel.WorksheetDim varMatriz As VariantDim lngUltimaFila As Long 'abrir programa ExcelSet xlApp = New Excel.Application'xl.Visible = True 'abrir el archivo Excel (archivo en otra carpeta)Set xlLibro = xlApp.Workbooks.Open _("c:Fax2.xls", True, True, , "") 'abrir el archivo Excel (archivo en la misma carpeta)Set xlLibro = xlApp.Workbooks.Open(App.Path & _"Fax2.xls", True, True, , "")Set xlHoja = xlApp.Worksheets("Hoja1") '1. Si conoces el rango a leer'varMatriz = xlHoja.Range("A1:C10").Value '2. Si no conoces el rangolngUltimaFila = _Columns("A:A").Range("A65536").End(xlUp).Row varMatriz = xlHoja.Range(Cells(1, 1), _Cells(lngUltimaFila, 1)) 'utilizamos los datos...Text1.Text = varMatriz(27, 1) 'cerramos el archivo ExcelxlLibro.Close SaveChanges:=FalsexlApp.Quit 'reset variables de los objetosSet xlHoja = NothingSet xlLibro = NothingSet xlApp = Nothing End Sub  
Para que esto funcione, Visual Basic necesitará cargar los objetos de Excel. Por eso, no olvides marcar Microsoft Excel x.xx Object Library en tu Visual Basic - Proyecto/Referencias, Espero te ayude en algo....

santos el sinaloa:
Muchas gracias portu ayuda lo intentaré, espero que me funcione luego me pongo en contacto.

¡saludos!

SANTOS EL SINALOA

m0skit0:
Está todo bien, pero te doy unos cuantos consejos (después de unos cuantos meses de experiencia con el Excel y el VB6 en el curro):

1. Si puedes evitar las matrices, mejor que mejor. VB6 es lento, y con matrices más todavía.
2. Puedes leer una celda directamente con xlHoja.Cells(Fila,Columna) en vez de Range que también es muy lenta.
3. Evita en lo que puedas lecturas innecesarias del Excel, es muuuuuuuuy lento.
4. Evita tener varios libros abiertos. En mi caso el proceso EXCEL.EXE puede llegarme a ocupar 120MB de memoria él solito.

Saludos y mucha suerte.

ferhn:
:o  No habia pensado en ello, soy nuevo en vb pero estare programando en el los proximos 3 meses x la universidad, sera de mucha ayuda contar con uds... y de verdad les agradezco x su dedicacion...  :good:

Navegación

[0] Índice de Mensajes

Ir a la versión completa