Foros del Web » Programación para mayores de 30 ;) » .NET »

Exportar Formulario vb.net a Excel

Estas en el tema de Exportar Formulario vb.net a Excel en el foro de .NET en Foros del Web. Hola amigos de foros del web, soy nuevo en la programacion en Vb.net y actualmente estoy trabajando con vb.net 2003 y tengo una consulta. Tengo ...
  #1 (permalink)  
Antiguo 08/09/2014, 15:27
 
Fecha de Ingreso: agosto-2014
Mensajes: 19
Antigüedad: 9 años, 9 meses
Puntos: 0
Exportar Formulario vb.net a Excel

Hola amigos de foros del web, soy nuevo en la programacion en Vb.net y actualmente estoy trabajando con vb.net 2003 y tengo una consulta.
Tengo el siguiente codigo y me gustaria adaptarlo para exportar unos registros de formulario que traigo a partir de una consulta en sql,me explico.

Genero un formulario en vb.net con interfaz web ,que a partir de una consulta trae los datos de un un usuario .

Nombre: Juan
Edad :30
Fecha_de nacimiento:26/09/1981

hasta aqui todo bien, los textbox se llenan con los resultados de la consulta ,pero necesito exportar esos datos a excel, y he tratado de adaptar el siguiente codigo que recorre los registros de un datagrid y los exporta a excel pero no he tenido buenos resultado.
Agradeceria vuestra ayuda,

CODIGO ORIGINAL
**********
Dim MyEx As New Excel.Application
Dim MyBook As Excel.Workbook
Dim MySheet As Excel.Worksheet
MyEx.DisplayAlerts = False
MyBook = MyEx.Workbooks.Add
MySheet = MyBook.Sheets.Add
MySheet.Name = "Worksheet Name"

'Entering static values into cells as headers
MySheet.Cells(1, 1) = "Header 1"
MySheet.Cells(1, 2) = "Header 2"
MySheet.Cells(1, 3) = "Header 3"
MySheet.Cells(1, 4) = "Header 4"
MySheet.Cells(1, 5) = "Header 5"
MySheet.Cells(1, 6) = "Header 6"

'Reading through a data set to fill in the rest of the worksheet
For i = 0 To DataSet.Tables(0).Rows.Count - 1
MySheet.Cells(i + 2, 1) = DataSet.Tables(0).Rows(i).Item(0)
MySheet.Cells(i + 2, 2) = DataSet.Tables(0).Rows(i).Item(1)
MySheet.Cells(i + 2, 3) = DataSet.Tables(0).Rows(i).Item(2)
MySheet.Cells(i + 2, 4) = DataSet.Tables(0).Rows(i).Item(3)
MySheet.Cells(i + 2, 5) = DataSet.Tables(0).Rows(i).Item(4)
MySheet.Cells(i + 2, 6) = DataSet.Tables(0).Rows(i).Item(5)
Next

MyBook.SaveAs("FileName.csv", FileFormat:=Excel.XlFileFormat.xlCSV)
MyBook.Close()
MyEx.Quit()
MySheet = Nothing
MyBook = Nothing
MyEx = Nothing
System.GC.Collect()

MI CODIGO
**********
Private Sub ImageButton1_Click(ByVal sender As System.Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles ImageButton1.Click
'Dim MyEx As New Excel.Application
'Dim MyBook As Excel.Workbook
'Dim MySheet As Excel.Worksheet
Dim MyEx As New Microsoft.Office.Interop.Excel.Application
Dim MyBook As New Microsoft.Office.Interop.Excel.Workbook
Dim MySheet As New Microsoft.Office.Interop.Excel.Worksheet
MyEx.DisplayAlerts = False
MyBook = MyEx.Workbooks.Add
MySheet = MyBook.Worksheets.Add()
MySheet.Name = "Worksheet_Name"

'Entering static values into cells as headers
MySheet.Cells(1, 1) = "Header 1"
MySheet.Cells(1, 2) = "Header 2"
MySheet.Cells(1, 3) = "Header 3"
MySheet.Cells(1, 4) = "Header 4"
MySheet.Cells(1, 5) = "Header 5"
MySheet.Cells(1, 6) = "Header 6"
MySheet.Cells(1, 6) = "Header 7"
MySheet.Cells(1, 6) = "Header 8"
MySheet.Cells(1, 6) = "Header 9"
MySheet.Cells(1, 6) = "Header 10"


'Reading through a data set to fill in the rest of the worksheet

MySheet.Cells(0 + 2, 1) = txt_fecha_indi.Text
MySheet.Cells(1 + 2, 2) = txt_nombre_int_indi.Text
MySheet.Cells(2 + 2, 3) = txt_rut_int_indi.Text
MySheet.Cells(3 + 2, 4) = txt_nombre_esta_indi.Text
MySheet.Cells(4 + 2, 5) = txt_nombre_depend_indi.Text
MySheet.Cells(5 + 2, 6) = txt_nombre_gestor_caso_indi.Text
MySheet.Cells(6 + 2, 7) = txt_duracion_condena_indi.Text
MySheet.Cells(7 + 2, 8) = txt_fecha_cumpli_indi.Text
MySheet.Cells(8 + 2, 9) = txt_causa_ingreso_indi.Text
MySheet.Cells(9 + 2, 10) = txt_obs_indi.Text



MyBook.SaveAs("FileName.csv", FileFormat:=Excel.XlFileFormat.xlCSV)
MyBook.Close()
MyEx.Quit()
MySheet = Nothing
MyBook = Nothing
MyEx = Nothing
System.GC.Collect()
End Sub





Desde ya muchas Gracias

Última edición por alejandrorene; 09/09/2014 a las 07:13
  #2 (permalink)  
Antiguo 10/09/2014, 15:59
Avatar de Drako_18  
Fecha de Ingreso: mayo-2005
Ubicación: Madrid
Mensajes: 505
Antigüedad: 19 años
Puntos: 16
Respuesta: Exportar Formulario vb.net a Excel

Buenas compañero,

Comencemos por el principio... Según un ejemplo sencillo de esta web de Microsoft (http://msdn.microsoft.com/en-us/libr...ffice.15).aspx)
el método Cells tiene 2 parámetros.. FILA y COLUMNA...
Entiendo que estos datos van a ir a la fila 2 y cada campo a su columna... Porque no contemplas que ya existan datos en la hoja..
Si pones Cells(2+2, 3) quiere decir que estás escribiendo en la celda C4 y no creo que quieras escribir en la C4, sino en la C2... No?

Espero haberte ayudado algo, sino comenta por aquí y le echo un vistazo mañana.


Un saludo!!
__________________
Rubén Espada
Desarrollador full stack .Net (Angular + JS + .Net Core)

Etiquetas: excel, formulario, net, sql
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:54.