Comment on Tutorial - How to export from DataGridView to excel using VB.net By Issac
Comment Added by : Anonymous
Comment Added at : 2015-04-21 03:10:41
Comment on Tutorial : How to export from DataGridView to excel using VB.net By Issac
' REFERENCIA EN EL PROYECTO (Microsoft Excel 12.0 Object Library)
' BUSCARLA EN PESTAÑA COM (C:Program Files (x86)Microsoft OfficeOffice12EXCEL>EXE)
Imports Excel = Microsoft.Office.Interop.Excel Imports Microsoft.Vbe.Interop
Public Class Form1
Sub DATAGRIDVIEW_TO_EXCEL(ByVal DGV As DataGridView)
Try
Dim DTB = New DataTable, RWS As Integer, CLS As Integer
For CLS = 0 To DGV.ColumnCount - 1
DTB.Columns.Add(DGV.Columns(CLS).Name.ToString)
Next
Dim DRW As DataRow
For RWS = 0 To DGV.Rows.Count - 1
DRW = DTB.NewRow
For CLS = 0 To DGV.ColumnCount - 1
If DGV.Columns(CLS).Visible = True Then
Try
DRW(DTB.Columns(CLS).ColumnName.ToString) = DGV.Rows(RWS).Cells(CLS).Value.ToString
Catch ex As Exception
End Try
End If
Next
DTB.Rows.Add(DRW)
Next
DTB.AcceptChanges()
Dim DST As New DataSet
DST.Tables.Add(DTB)
DTB.WriteXml("C:MMS FILESRESOURCESXML.xml") ' SE CREA UN XML CON LA INFO DEL DATAGRIDVIEW
MACRO("C:MMS FILESRESOURCESXML.xml") ' Y ESTE PROCEDIMIENTO LO ABRE EN EXCEL
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Sub
Private Sub MACRO(ByVal FLE As String)
Try
Dim xlApp As Object = New Microsoft.Office.Interop.Excel.Application
Try ' OPCIONALMENTE LE DAS TAMAÑO A TU APLICACION DE EXCEL
xlApp.Left = 250
xlApp.Top = 100
xlApp.Width = 900
xlApp.Height = 550
Catch ex As Exception
' PROTEGIENDO EL PROCESO SI LA ULTIMA APLICACION FUE EN FULL SCREEN
End Try
Dim xlWb As Excel.Workbook = xlApp.Workbooks.Add ' AGREGAS TU LIBRO DE EXCEL
Dim MT As Integer ' Y OPCIONALMENTE LE DAS ESTILO Y FORMATO A SUS 3 HOJAS
For MT = 3 To 1 Step -1
xlWb.Sheets(MT).Select()
xlWb.Sheets(MT).cells.select()
xlWb.Sheets(MT).cells.Font.Name = "Arial"
xlWb.Sheets(MT).cells.Font.Size = 8
xlWb.Sheets(MT).cells.Font.bold = True
xlWb.Sheets(MT).Range("A1").Select()
Next
' LE CREAS UN MODULO LO NOMBRAS Y LE AGREGAS UNA MACRO DE ARRANQUE AL ABRIR
Dim xlMod As Microsoft.Vbe.Interop.VBComponent = xlWb.VBProject.VBComponents.Add(Microsoft.Vbe.Interop.vbext_ComponentType.vbext_ct_StdModule)
xlMod.Name = "Module1"
Dim macroCode As String = _
"Public Sub Main()" & vbCrLf & _
" ActiveWorkbook.XmlImport URL:=" & Chr(34) & FLE & Chr(34) & ", ImportMap:=Nothing, Overwrite:=True, Destination:=Range(" & Chr(34) & "$A$1" & Chr(34) & ")" & vbCrLf & _
" ActiveSheet.ListObjects(" & Chr(34) & "Table1" & Chr(34) & ").TableStyle = " & Chr(34) & "TableStyleMedium12" & vbCrLf & _
" Sheet1.Range(" & Chr(34) & "A2" & Chr(34) & ").Select" & vbCrLf & _
" ActiveWindow.FreezePanes = True" & vbCrLf & _
"End Sub"
xlMod.CodeModule.AddFromString(macroCode)
xlApp.Visible = True
xlApp.Application.Run("Main")
' OPCIONALMENTE (RECOMENDADO DIRIA YO) BORRAS TU MODULO SALVO QUE QUIERAS VERLO DURANTE LAS PRUEBAS
Dim MDL As Object = xlApp.Application.VBE.ActiveVBProject.VBComponents
MDL.Remove(VBComponent:=MDL.Item("Module1"))
' Y CIERRAS ESTE PROCEDIMIENTO LIBERANDO LAS VARIABLES
ReleaseObject(xlApp)
ReleaseObject(xlMod)
ReleaseObject(xlWb)
ReleaseObject(MDL)
Catch ex As Exception
MsgBox(ex.ToString())
End Try
End Sub
Private Sub ReleaseObject(ByVal OBJ As Object)
Try
System.Runtime.InteropServices.Marshal.ReleaseComObject(OBJ)
Catch ex As Exception
End Try
OBJ = Nothing
GC.Collect()
End Sub
End Class
View Tutorial
- Data Science
- Android
- AJAX
- ASP.net
- C
- C++
- C#
- Cocoa
- Cloud Computing
- HTML5
- Java
- Javascript
- JSF
- JSP
- J2ME
- Java Beans
- EJB
- JDBC
- Linux
- Mac OS X
- iPhone
- MySQL
- Office 365
- Perl
- PHP
- Python
- Ruby
- VB.net
- Hibernate
- Struts
- SAP
- Trends
- Tech Reviews
- WebServices
- XML
- Certification
- Interview
categories
Subscribe to Tutorials
Related Tutorials
Program using concept of byte long short and int in java
Update contents of a file within a jar file
Tomcat and httpd configured in port 8080 and 80
Count number of vowels, consonants and digits in a String in Java
Student marks calculation program in Java
Calculate gross salary in Java
Calculate average sale of the week in Java
Vector in Java - Sample Program
MultiLevel Inheritance sample in Java
Archived Comments
1. now I know what isset is for, thank you very much
View Tutorial By: Anonymous at 2010-12-23 20:43:29
2. sir,
When I run the above code and give 6 o
View Tutorial By: nishant at 2012-07-01 17:11:20
3. hi please help me out.. how to use this card for r
View Tutorial By: sasivarnan at 2011-04-27 15:01:12
4. Nice article
View Tutorial By: Chakravarthy at 2009-06-09 23:29:09
5. i can saved when i run the program...
but w
View Tutorial By: kathleen ashley at 2010-08-02 05:22:46
6. I have an apple computer and I cannot find the &qu
View Tutorial By: Dylan at 2009-04-11 19:43:41
7. very good explanation... thnx...
View Tutorial By: gobu at 2009-04-05 23:43:19
8. Great explanations! I looked for other guides and
View Tutorial By: A.Lepe at 2010-09-15 21:36:42
9. Plz can u give me some more examples of recursion.
View Tutorial By: Asadullah at 2010-01-23 06:38:58
10. When I use this code it puts everything I append o
View Tutorial By: Amber at 2012-06-18 15:33:22