estoy buscando una forma de,a traves de codigo, poder crear un excel y poder descargarlo
Esto en un mismo boton. Tengo un codigo que me crea un excel a partir de un template que tengo guardado, pero al momento de intentar descargar el archivo este me da un error.
Agradeceria ayuda por favor.
Adjunto el codigo, espero que les pueda ayudar a poder iluminarme con una solucion
Código:
Agradesco desde ya sus sugerencias e ideas Dim FileToCopy As String Dim NewCopy As String Dim nombre As String Dim Libro As Excel.Workbook ' Libro de trabajo Dim Hoja As New Excel.Worksheet Dim MiClase As New ClassOrganizacion Dim dv As New Data.DataView dv = MiClase.TraeOrganizaciones(chkDesabilitados.Checked) Try If Not (Session.Item("filtro") = Nothing) Then dv.RowFilter = Session.Item("filtro").ToString End If Catch End Try Dim row As Integer If dv.Count > 0 Then nombre = "Folderpublic" & Now.Year & Now.Month & Now.Day & Now.Hour & Now.Minute & Now.Second & ".xls" Try FileToCopy = rutaExcel & "plantillas\" & "Organizaciones.xls" NewCopy = rutaExcel & "impresos\Org_" & nombre System.IO.File.Copy(FileToCopy, NewCopy) oApp = New Excel.Application Libro = oApp.Workbooks.Open(NewCopy) Hoja = CType(Libro.Sheets("Hoja1"), Excel.Worksheet) Hoja.Cells(2, 2) = "Listado de Organizaciones" Dim fila As Integer = 5 For row = 0 To dv.Count - 1 Hoja.Cells(fila + row, 1) = dv.Item(row).Item("run") Hoja.Cells(fila + row, 2) = dv.Item(row).Item("nombre") Hoja.Cells(fila + row, 3) = dv.Item(row).Item("mail") Hoja.Cells(fila + row, 4) = dv.Item(row).Item("FONO_CONTACTO") Hoja.Cells(fila + row, 5) = dv.Item(row).Item("rubro") Hoja.Cells(fila + row, 6) = dv.Item(row).Item("direccion") Hoja.Cells(fila + row, 7) = dv.Item(row).Item("estado") Hoja.Cells(fila + row, 8) = dv.Item(row).Item("habilitado") Next Catch ex As Exception Finally 'oApp.Visible = True Libro.Save() Hoja = Nothing Libro.Close(False) Libro = Nothing oApp.Quit() oApp = Nothing Response.AddHeader("Content-Disposition", "attachment; filename=" & NewCopy) Response.WriteFile(NewCopy) End Try Else Me.LbMsjs.Visible = True End If