bueno, hace mucho tiempo vi una herramienta echa en vb 6.0 en donde podias ejecutar script y exportar los resultados a excel....
ahora tengo casi 8 meses de haber creado my app para lo mismo pero en vb.Net.... y aún no habia podido superar el problema de exportar los resultados a excel de forma rápida..... al exportar un query con al menos 5000 registros de casi 20 campos se tardaba un revergo..... casi 20 minutos...... ahora solo 5 segundos
ironicamente hasta hace +/- 1 mes gracias a un auditor y con un poco de ingenio encontre lo que necesitaba
.... ahora no exporto a base de código, leyendo el gridView, sino, hago que excel exporte por mi....
Imports Microsoft.Office.Interop
Public Class exportaExcel
Private myExcelFile As Excel.Application
Private myExcelBook As Excel.Workbook
Private myExcelSheet As Excel.Worksheet
Public Sub New()
Try
myExcelFile = New Excel.Application
myExcelBook = myExcelFile.Workbooks.Add
myExcelSheet = New Excel.Worksheet
myExcelSheet = CType(myExcelBook.Worksheets(1), Excel.Worksheet)
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Public Function exportarExcel(ByVal StringConex As String, ByVal sqlScript As String) as Boolean
Try
myExcelSheet.Cells.Font.Size = 8
myExcelFile.Visible = True
' mireme la seña........
With myExcelSheet.QueryTables.Add(StringConex, myExcelSheet.Range("A1"))
.CommandText = sqlScript
.Name = "tkun-exportaExcel"
.Refresh()
End With
Return True
Catch ex As Exception
MsgBox(ex.Message)
Return False
End Try
End Sub
End Class
solo setea la clase como una nueva y utiliza la Función exportarExcel(tuConexion, tuQuery) y mireme la seña....
pd: se pueden hacer otro par de cosillas mas en esta clase, pero creo que basta con lo que tiene...