Exportar a Excel QueryTables.Add Auxilio !

07/07/2004 - 23:16 por Jose Manuel Davila | Informe spam
que tal exporto a excel con esta rutina desde vb6


aqui envia la instruccion para que exporte
var_cnn = "ODBC;DRIVER=SQL Server;SERVER=" & parametros(0) &
";UID=sa;PWD=" & parametros(3) & ";DATABASE=" & parametros(1)

With oWorkBook.ActiveSheet.QueryTables.Add(Connection:=var_cnn, _
Destination:=oWorkBook.ActiveSheet.Cells(4, 1), SQL:=var_sql)
' Actualizamos los datos...
.Refresh
End With
si son bastantes datos todavia no acaba de exportar sin embargo el
sistema sigue su ejecucion en la sigueinte fila


oSheet.Range("D5").Select

'OEXCEL.ActiveWindow.FreezePanes = True
Screen.MousePointer = vbDefault
OEXCEL.DisplayAlerts = False
oWorkBook.SaveAs var_Nombre_Archivo
oWorkBook.Close 'SaveChanges:=True, Filename:=var_Nombre_Archivo
OEXCEL.Quit
Set oWorkBook = Nothing
Set oSheet = Nothing
Set OEXCEL = Nothing


si todavia no termina el archivo se guarda vacio

como podre controlar esto


gracias a todo ayuda ofrecida
 

Leer las respuestas

#1 Fernando Arroyo
08/07/2004 - 09:29 | Informe spam
Pienso que la solución podría ser situar el código que va después de la actualización de la tabla en el evento AfterRefresh del objeto QueryTable, pero para poder hacerlo es necesario crear un objeto QueryTable "con eventos", en un módulo de clase.

Yo tengo hecho un ejemplito que no hace lo que necesitas, pero que quizás te sirva de ejemplo: se trata de actualizar una consulta web situada en una hoja protegida. El código que va en el módulo de clase se encarga de desproteger la hoja en el momento en que se va a iniciar la actualización, y de protegerla de nuevo cuando la actualización termina. Te pongo el enlace:

http://www.excelsp.com/ejemplos/eje...table1.xls

Un saludo.


Fernando Arroyo
MS MVP - Excel


"Jose Manuel Davila" escribió en el mensaje news:
que tal exporto a excel con esta rutina desde vb6


aqui envia la instruccion para que exporte
var_cnn = "ODBC;DRIVER=SQL Server;SERVER=" & parametros(0) &
";UID=sa;PWD=" & parametros(3) & ";DATABASE=" & parametros(1)

With oWorkBook.ActiveSheet.QueryTables.Add(Connection:=var_cnn, _
Destination:=oWorkBook.ActiveSheet.Cells(4, 1), SQL:=var_sql)
' Actualizamos los datos...
.Refresh
End With
si son bastantes datos todavia no acaba de exportar sin embargo el
sistema sigue su ejecucion en la sigueinte fila


oSheet.Range("D5").Select

'OEXCEL.ActiveWindow.FreezePanes = True
Screen.MousePointer = vbDefault
OEXCEL.DisplayAlerts = False
oWorkBook.SaveAs var_Nombre_Archivo
oWorkBook.Close 'SaveChanges:=True, Filename:=var_Nombre_Archivo
OEXCEL.Quit
Set oWorkBook = Nothing
Set oSheet = Nothing
Set OEXCEL = Nothing


si todavia no termina el archivo se guarda vacio

como podre controlar esto


gracias a todo ayuda ofrecida


Preguntas similares