Visual Basic.NET - PASAR GRILLA a EXCEL EN VB.NET

 
Vista:

PASAR GRILLA a EXCEL EN VB.NET

Publicado por MANUEL (10 intervenciones) el 22/06/2005 00:14:57
Hola tengo un problema. resulta que quiero pasar los datos de una grilla a una planilla excel, este codigo lo hace pero solo para los registros visibles de la grilla y necesito pasar todos los registro, AYUDAAAAAAAAAAAAAAAAAA por favor. como lo debo hacer para pasar todos los registros no solos los visibles.

Try
Me.Cursor = Cursors.WaitCursor
If (DataGrid1.VisibleColumnCount) > 0 Then
'Export_Excel("Informe Documentos Cargados ", DataGrid1, (DataGrid1.VisibleRowCount), (DataGrid1.VisibleColumnCount))
Dim oExcel
Dim Fila, Columna, cont, iCol, XColumna As Integer
Dim Path, variable As String
Dim item As DataGridCell
Dim columnas As DataGridCell
oExcel = CreateObject("OWC.Spreadsheet")

Fila = 0
Columna = 0

While Columna < DataGrid1.VisibleColumnCount
oExcel.Cells(1, Columna + 1).Value = DataGrid1.RowHeaderWidth
oExcel.Columns(Columna + 1).AutoFitColumns()
Columna = Columna + 1
End While

' Se escriben valores de la variable cont en la hoja Excel, accediendo directamente a Filas y Columnas
Fila = 0
Columna = 0
Dim Fila_Excel As Integer = 2
While Fila < DataGrid1.VisibleRowCount
Columna = 0
XColumna = 0
While Columna < DataGrid1.VisibleColumnCount
Try
If IsNumeric(DataGrid1.Item(Fila, Columna).ToString) Then
variable = DataGrid1.Item(Fila, Columna).ToString

ElseIf IsNumeric(DataGrid1.Item(Fila, Columna).ToString) Then
variable = DataGrid1.Item(Fila, Columna).ToString

ElseIf IsDate(DataGrid1.Item(Fila, Columna).ToString) Then
variable = "'" & DataGrid1.Item(Fila, Columna).ToString

ElseIf IsDBNull(DataGrid1.Item(Fila, Columna).ToString) Then
variable = ""

Else
variable = DataGrid1.Item(Fila, Columna).ToString
End If

Catch ex As System.InvalidCastException
variable = ""
End Try

Try
oExcel.Cells(Fila_Excel, XColumna + 1).value = variable.ToString.Trim

Catch ex As Exception
Try
oExcel.Cells(Fila_Excel, XColumna + 1).value = "'" + variable.ToString + "'"
Catch exc As Exception
oExcel.Cells(Fila_Excel, XColumna + 1).value = "##Error##"
End Try

End Try

XColumna = XColumna + 1
Columna = Columna + 1

End While
Fila = Fila + 1
Fila_Excel = Fila_Excel + 1

End While

'Damos algo de formato a la primera línea de la hoja
cont = 1
Do While cont <= Columna
oExcel.Cells(1, cont).Font.Bold = True
oExcel.Cells(1, cont).Font.Size = 10
oExcel.Cells(1, cont).Font.Name = "Arial"
oExcel.Columns(cont).AutoFitColumns()
cont = cont + 1
Loop

'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
oExcel.ActiveSheet.Export(SaveDialog.FileName, 0)
MessageBox.Show("Documento Guardado Como : " & SaveDialog.FileName, "Información", MessageBoxButtons.OK, MessageBoxIcon.Information)
Catch ex As Exception
MessageBox.Show("No se Puede Procesar, El Archivo puede que se encuentre abierto, Verifique")
End Try
End If
'----
End If

Me.Cursor = Cursors.Default

Catch ex As System.NullReferenceException
MsgBox(ex.Message)
Me.Cursor = Cursors.Default
Exit Sub
End Try
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:PASAR GRILLA a EXCEL EN VB.NET

Publicado por Harold (411 intervenciones) el 22/06/2005 01:14:44
me imagino que cargas el datagrid con un dataset verdad?, pues entones mueve esos datos del dataset a excel, no tienes que sacar los datos del datagrid aunque si se puede..................
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

RE:PASAR GRILLA a EXCEL EN VB.NET

Publicado por MANUEL (10 intervenciones) el 22/06/2005 15:11:15
Harnold. Antes de comenzar te doy las gracias por contestar, pero es justo eso lo que necesito sacar los datos de la misma grilla ya que le cambio la posicion de las columnas y necesito grabar a excel con los camios echos en la grilla, te agradeceria mucho si me puedes orientar.

GRACIAS
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

RE:PASAR GRILLA a EXCEL EN VB.NET

Publicado por Harold (411 intervenciones) el 22/06/2005 19:23:13
Una consulta como ocultas las columnas en tu datagrid???
me falta ese dato..........
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

RE:PASAR GRILLA a EXCEL EN VB.NET

Publicado por DCErick (2 intervenciones) el 30/06/2005 23:53:09
Que haces en esta linea CreateObject("OWC.Spreadsheet")
???

Y tu exportacion funciona sin importar la version de office instalado en la PC????
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