Visual Basic.NET - EXPORTAR GRILLA A EXCEL

 
Vista:

EXPORTAR GRILLA A EXCEL

Publicado por Jacqueline (8 intervenciones) el 29/06/2005 22:18:12
Hola como puedo exportar los datos de una grilla a excel. AYUDA PLISSSSSS. no me sirve utilizar el dataset debe ser directo de la grilla.

CHAUUUU GRACIAAAAASSS
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:EXPORTAR GRILLA A EXCEL

Publicado por Harold (411 intervenciones) el 30/06/2005 00:16:37
'Este ejemplo abre excel en forma invisible, agrega los datos de la tabla incluido el encabezado, guarda el archivo de excel, cierra excel listo..............
Espero te ayude..........

Dim xlApp As New Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Dim variable As String
Dim fila, Columna, numcol, x As Integer
Dim myTable As DataTable
Dim FilaExcel As Integer = 2

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
xlBook = CType(xlApp.Workbooks.Add, Excel.Workbook)
xlSheet = CType(xlBook.Worksheets(1), Excel.Worksheet)
Try
Me.Cursor = Cursors.WaitCursor
myTable = CType(DataGrid1.DataSource, DataTable) 'obtengo la estructura del datagrid
numcol = myTable.Columns.Count ' el doc de excel tiene 4 columnas para este e jemplo'''''''''''''''''''
For x = 1 To numcol
xlSheet.Cells(1, x).Font.Bold = True
xlSheet.Cells(1, x).Font.Size = 11
xlSheet.Cells(1, x).Font.Name = "Arial"
Next

For fila = 0 To myTable.Rows.Count - 1 ' numero de filas
For Columna = 0 To myTable.Columns.Count - 1 ' numero de columnas
xlSheet.Cells(1, Columna + 1).value = myTable.Columns(Columna).ColumnName
If IsNumeric(DataGrid1.Item(fila, Columna).ToString) Then
variable = Convert.ToString(DataGrid1.Item(fila, Columna))
ElseIf IsNumeric(DataGrid1.Item(fila, Columna).ToString) Then
variable = Convert.ToString(DataGrid1.Item(fila, Columna))
ElseIf IsDate(DataGrid1.Item(fila, Columna).ToString) Then
variable = Convert.ToString(Microsoft.VisualBasic.Format(DataGrid1.Item(fila, Columna), "Short Date")) ' convierte la fecha en formato 22/11/77
ElseIf IsDBNull(DataGrid1.Item(fila, Columna).ToString) Then
variable = ""
Else
variable = Convert.ToString(DataGrid1.Item(fila, Columna))
End If
xlSheet.Cells(FilaExcel, Columna + 1).value = variable
Next
FilaExcel += 1
Next
xlSheet.Columns.AutoFit()
'Se exporta la hoja Excel cargada en el objeto oExcel a un archivo .XLS
Dim SaveDialog = New SaveFileDialog
SaveDialog.DefaultExt = "*.xls"
SaveDialog.Filter = "(*.xls)|*.xls"
If SaveDialog.ShowDialog = DialogResult.OK Then
Try
xlSheet.SaveAs(SaveDialog.FileName)
Me.Cursor = Cursors.Default
MessageBox.Show("Documento Guardado Como : " & SaveDialog.FileName, "Información", MessageBoxButtons.OK, MessageBoxIcon.Information)
xlBook.Close()
xlApp.Quit()
xlApp = Nothing
Catch ex As Exception
MessageBox.Show("No se Puede Procesar, El Archivo puede que se encuentre abierto, Verifique")
End Try
End If
Catch ex As System.NullReferenceException
MsgBox(ex.Message)
Me.Cursor = Cursors.Default
Exit Sub
End Try

End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar