Visual Basic Foro
Programación => Visual Basic 6 => Mensaje iniciado por: ssccaann43 en Septiembre 07, 2017, 02:14:42 pm
-
Buenas a todos.
Espero me puedan ayudar, es posible escribir sobre un archivo previamente ya creado en Excel, sobre una hoja especifica o sobre varias hojas especificas y guardar esto desde VB6?
Puedo hacerlo en cualquier otro formato de Excel o texto plano, pero en ese tipo de archivo especifico no he logrado hacerlo.
Alguien sabe como hacerlo?
Saludos a todos
-
Hola Sccann como andas tanto tiempo, perdon por leer tarde ya poco me conecto.
con respecto a tu pregunta es facil te dejo comentado cada line cualquier cosa preguntas.
Option Explicit
Private Sub Form_Load()
Dim oExcelApp As Object
Dim oLibro As Object
Dim oHoja As Object
Dim Fila As Long
Dim Columna As Long
Set oExcelApp = CreateObject("Excel.Application") 'Crea una aplicacion de Excel
Set oLibro = oExcelApp.Workbooks.Open("C:\Users\Windows\Desktop\Consulta.xlsm") 'Abre el Libro indicado
Set oHoja = oLibro.Worksheets("Hoja1") 'Seleciona la Hoja "Hoja1" aca podes cambiarlo por la hoja que tengas en el libro.
Columna = 1
Fila = 2
oHoja.Cells(Fila, Columna).Value = "Hola Mundo" 'Escrive en la celda A2
Fila = 3
oHoja.Cells(Fila, Columna).Value = "Hola ssccaann43" 'Escrive en la celda A3
oLibro.Close True 'Cierra el libro y guarda los cambios
' --
oExcelApp.Quit 'Cerrar Excel
'Libera todos los objetos creados.
Set oHoja = Nothing
Set oLibro = Nothing
Set oExcelApp = Nothing
End Sub
Después vos maneja los errores. (mas que nada si no esta excel instalado o el libro esta abierto te dara error.)
-
Hola Sccann como andas tanto tiempo, perdon por leer tarde ya poco me conecto.
con respecto a tu pregunta es facil te dejo comentado cada line cualquier cosa preguntas.
Option Explicit
Private Sub Form_Load()
Dim oExcelApp As Object
Dim oLibro As Object
Dim oHoja As Object
Dim Fila As Long
Dim Columna As Long
Set oExcelApp = CreateObject("Excel.Application") 'Crea una aplicacion de Excel
Set oLibro = oExcelApp.Workbooks.Open("C:\Users\Windows\Desktop\Consulta.xlsm") 'Abre el Libro indicado
Set oHoja = oLibro.Worksheets("Hoja1") 'Seleciona la Hoja "Hoja1" aca podes cambiarlo por la hoja que tengas en el libro.
Columna = 1
Fila = 2
oHoja.Cells(Fila, Columna).Value = "Hola Mundo" 'Escrive en la celda A2
Fila = 3
oHoja.Cells(Fila, Columna).Value = "Hola ssccaann43" 'Escrive en la celda A3
oLibro.Close True 'Cierra el libro y guarda los cambios
' --
oExcelApp.Quit 'Cerrar Excel
'Libera todos los objetos creados.
Set oHoja = Nothing
Set oLibro = Nothing
Set oExcelApp = Nothing
End Sub
Después vos maneja los errores. (mas que nada si no esta excel instalado o el libro esta abierto te dara error.)
Querido hermano, espero te encuentres bien... Grande lea, después comparto lo que estoy desarrollando.
Para que tengas una idea, estoy haciendo algo así: http://www.apesoft.es/caracteristicas-dcmv/
https://www.youtube.com/watch?v=-Qbwkd5vUGI
Una herramienta que puede conectarse a cualquier Base de Datos (Access, SQL Server y MySQL)
Con la cual podrás generar informes en plantillas prediseñadas con Macros para graficas, estadisticas, etc.
Una herramienta que va de la mano con el B.I. (Inteligencia de Negocio)
El detalle es que llegue a pensar que esas plantillas se armaban desde el VB6, pero no, ya vi y me di cuenta que las plantillas están listas esperando solo se escriban en hojas especificas y luego se ejecutan macros para actualizar la información y posteriormente se mandan por Mail.
Pero todo esto lo aprendí a las malas, después de tantos golpes.
Bueno gracias por el apoyo, un abrazo, bendiciones para tu baby, saludos.
-
Buenos Dias LeandroA,
Y como seria para recorrer un ListView y exportar a una Plantilla de excel ya prediseñada, asi como menciona ssccaann43
-
Buenos Dias LeandroA,
Y como seria para recorrer un ListView y exportar a una Plantilla de excel ya prediseñada, asi como menciona ssccaann43
Hola Ever fijate en base a lo que le pase a Ssccaann
Columna = 1
Fila = 2
oHoja.Cells(Fila, Columna).Value = "Hola Mundo" 'Escrive en la celda A2
como ves indico que columna y fila deseo escrivir, ahora vos lo que tendrias que hacer son dos bucles (for y For X) uno dentro del otro
el primero por cada fila que contenga el ListView y el otro por cada Columna que contenga el listview y con esos mismo valores de Y, X del for son los que luego agregas en la planilla de excel según donde vos quieras escribir a Columna, fila le sumas la X Y
me explico?, saludos.