Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Exportar datosa excel

Estas en el tema de Exportar datosa excel en el foro de Visual Basic clásico en Foros del Web. Hola, utilizo el siguiente codigo para realizar la exportacion de datos desde una msfexgrid a una planilla, este funciona sin problemas, el unico inconveniente es ...
  #1 (permalink)  
Antiguo 22/08/2008, 06:44
 
Fecha de Ingreso: julio-2002
Ubicación: stgo rec
Mensajes: 438
Antigüedad: 21 años, 9 meses
Puntos: 3
Exportar datosa excel

Hola, utilizo el siguiente codigo para realizar la exportacion de datos desde una msfexgrid a una planilla, este funciona sin problemas, el unico inconveniente es que tarda demasiado cuando hay muchos datos, existe alguna forma de acelerar el proceso ?

Código:
            Set objExcel = CreateObject("Excel.Application")
            objExcel.Visible = False
            objExcel.DisplayAlerts = False
            Set objWorkbook = objExcel.Workbooks.Add
            Set objWorksheet = objWorkbook.Worksheets(1)
            For F = 0 To objgrid.Rows - 1
                For C = 0 To objgrid.Cols - 1
                    objgrid.Row = F
                    objgrid.Col = C
                    objWorksheet.Cells(F + 1, C + 1).Value = objgrid.Text
                Next C
            Next F
            'Graba el archivo excel y lo cierra
            objWorkbook.SaveAs (nombre)
            objExcel.Quit
__________________
Saludos
Leo
  #2 (permalink)  
Antiguo 22/08/2008, 07:00
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Exportar datosa excel

Prueba a colocar esto antes del bucle For:
Código PHP:
objExcel.ScreenUpdating False
objWorksheet
.EnableCalculation False 
Después, al final del bucle:
Código PHP:
objWorksheet.EnableCalculation True 
Con eso impedimos que la aplicación intente volver a pintar la pantalla y también evitamos que la hoja vuelva a calcularse cada vez que ingresamos un dato, tal vez con eso se acelere un poco el proceso.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 22/08/2008, 07:51
 
Fecha de Ingreso: julio-2002
Ubicación: stgo rec
Mensajes: 438
Antigüedad: 21 años, 9 meses
Puntos: 3
Respuesta: Exportar datos a excel

No mejoro mucho,

25 minutos 2.500 filas y 74 columas
es demasiado.
__________________
Saludos
Leo
  #4 (permalink)  
Antiguo 22/08/2008, 08:05
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 16 años, 3 meses
Puntos: 37
Respuesta: Exportar datos a excel

Cita:
Iniciado por leophp Ver Mensaje
No mejoro mucho,

25 minutos 2.500 filas y 74 columas
es demasiado.
¿Y cómo cargas el MSFlexGrid?

Porque si es a través de una tabla o un recordset puedes exportar más rápido con un SELECT * INTO o un CopyFromRecordset, en vez de hacerlo a través del propio MSFlexGrid.

  #5 (permalink)  
Antiguo 22/08/2008, 08:11
 
Fecha de Ingreso: julio-2002
Ubicación: stgo rec
Mensajes: 438
Antigüedad: 21 años, 9 meses
Puntos: 3
Respuesta: Exportar datosa excel

como es una funcion general que uso en muchos programas, en algunos se llena con una SQL y en otra a travez de procesos (la mayoria).
__________________
Saludos
Leo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:32.