How to Export DataGridView to Excel In VB.Net

How to Export DataGridView to Excel In VB.Net

This tutorial is all about how to Export DataGridView Data to Excel in VB.Net.

In this tutorial, you will expect that I will teach you everything you need to learn on how to Export DataGridView Data to excel using visual basic.net.

What is Visual Basic’s purpose?

The third-generation programming language was created to aid developers in the creation of Windows applications.

It has a programming environment that allows programmers to write code in.exe or executable files.

They can also utilize it to create in-house front-end solutions for interacting with huge databases.

It is because the language allows for continuing changes, you can keep coding and revising your work as needed.

However, there are some limits to the Microsoft Visual Basic download.

If you want to make applications that take a long time to process, this software isn’t for you.

That implies you won’t be able to use VB to create games or large apps because the system’s graphic interface requires a lot of memory and space. Furthermore, the language is limited to Microsoft and does not support other operating systems.

With this tutorial, it can answer the question raised in StackOverflow.

So let’s get started:

Steps How to Export DataGridView to Excel In VB.Net

Step 1: First, Open the Visual Basic, Select File on the menu, then click New and create a new project.

Step 2: Then a New Project Dialog will appear. You can rename your project, depending on what you like to name it. After that click OK.

Step 3: Design your form just like this one I’ve shown you below.
Drag a Datagridview and a Button from the toolbox.

Step 4: Add a reference to Microsoft Excel 12.0 Object Library, In the project menu click on Project – Add Reference – go to COM tab,
Add Microsoft Excel 12.0 Object Library

Step 5: After that, add the following references above the Public Class Form1 Line.

Imports System.Data.OleDb
Imports Excel = Microsoft.Office.Interop.Excel

Step 6: Then add these following declarations below the Public Class Form1 line.

Dim connString As String = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=C:\Users\Clive\Documents\Visual Studio 2008\clive projects\Exportdatagridtoexcel\Exportdatagridtoexcel\bin\Debug\test.accdb"

Dim excelLocation As String = "C:\Users\Clive\Documents\Visual Studio 2008\clive projects\Exportdatagridtoexcel\Exportdatagridtoexcel\bin\Debug\test.xlsx"
Dim Conn As OleDbConnection
Dim da As OleDbDataAdapter
Dim ds As DataSet
Dim tables As DataTableCollection
Dim source1 As New BindingSource
Dim APP As New Excel.Application
Dim worksheet As Excel.Worksheet
Dim workbook As Excel.Workbook

Step 7: Add this code to the form load event.

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
workbook = APP.Workbooks.Open(excelLocation)
worksheet = workbook.Worksheets("sheet1")
Conn = New OleDbConnection
Conn.ConnectionString = connString
ds = New DataSet
tables = ds.Tables
da = New OleDbDataAdapter("Select * from [tblbio]", Conn)
da.Fill(ds, "tblbio")
Dim view As New DataView(tables(0))
source1.DataSource = view
DataGridView1.DataSource = view
DataGridView1.AllowUserToAddRows = False

Step 8: Next, add this code to the export button.

Private Sub Btnexport_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btnexport.Click

Dim columnsCount As Integer = DataGridView1.Columns.Count
For Each column In DataGridView1.Columns
worksheet.Cells(1, column.Index + 1).Value = column.Name
Next
For i As Integer = 0 To DataGridView1.Rows.Count - 1
Dim columnIndex As Integer = 0
Do Until columnIndex = columnsCount
worksheet.Cells(i + 2, columnIndex + 1).Value = DataGridView1.Item(columnIndex, i).Value.ToString
columnIndex += 1
Loop
Next
End Sub

Step 9: Finally, add the following code to save the excel file when closing the form.

Private Sub Form1_FormClosed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed
workbook.Save()
workbook.Close()
APP.Quit()
End Sub

Step 10: Click F5 to run your project.

Output:

Export DataGridView to Excel vb.net output

If you have any questions or suggestions about Export DataGridView Data to Excel using VB.Net please contact me through our contact page.

Download Export DataGridView Data to Excel using VB.Net Source code Here

Readers might read also:

3 thoughts on “How to Export DataGridView to Excel In VB.Net”

Leave a Comment