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 = FalseStep 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:
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:
- How to Read an Excel file using Visual Basic.Net
- How to Make Media Player Using Visual Basic.Net
- How to Create an Image Slideshow Using VB.Net with Picturebox
Technology stack and requirements
To run this VB.NET project, you need the following on your development machine:
- Visual Studio 2019 or later. The free Community Edition is enough for building, debugging, and running the project.
- .NET Framework 4.7.2 or higher. Most Windows 10 and 11 systems have it preinstalled through Windows Update.
- MySQL Server 8.0 or MSSQL Express 2019. Choose whichever your capstone panel prefers; both work with VB.NET data adapters.
- MySQL Connector/NET or SqlClient library. Add via NuGet Package Manager inside Visual Studio.
- Crystal Reports (optional). Required only if the project generates printable reports; install the runtime redistributable.
Installing the source code
The download link contains a ZIP archive with the full solution. Extract and set up in five steps:
- Extract the archive to a folder outside Program Files (avoids permission issues).
- Open the .sln file in Visual Studio. It loads the full solution with all forms and modules.
- Restore NuGet packages. Right-click the solution then Restore NuGet Packages if prompted.
- Import the database. Locate the .sql file in the archive and import via phpMyAdmin (MySQL) or SQL Server Management Studio.
- Update the connection string in App.config or module code to match your local database name, user, and password.
How to use this project for your BSIT capstone
This VB.NET project maps cleanly to standard BSIT capstone documentation. Suggested chapter alignment:
- Chapter 1 (Introduction). Discuss the problem the system solves in real-world context. Cite Philippine business or academic use cases where a manual process could be replaced.
- Chapter 2 (Review of Related Literature). Compare this system’s features against 5-10 similar published projects. Cite journals like IJERT or IEEE Access for academic-standard sources.
- Chapter 3 (Methodology). Include Use Case Diagram, Data Flow Diagram, Entity Relationship Diagram, and Activity Diagram covering all major workflows in the system.
- Chapter 4 (Results and Discussion). Screenshot each module of the running system with a caption explaining what data it processes and which user role interacts with it.
- Chapter 5 (Conclusion and Recommendations). Identify features that could be added in a Version 2, such as web dashboard, mobile app, or REST API export.
Modules typical of How to Export DataGridView to Excel
- Master data. CRUD forms for the primary entities the system manages, with search and filter.
- Transaction processing. Data entry forms for the day-to-day operations the system automates.
- Reports. Formatted printable output summarizing activity per day, per user, or per category.
- User management. Login with role-based permissions (Admin, Encoder, Viewer).
- Backup and restore. Export database to a .sql or .bak file and restore when needed.
Common enhancements for capstone review
- Modernize the UI. Add Bunifu or Guna UI controls for a more polished, modern appearance.
- Add printable receipts. Integrate a printer preview form with page-setup options.
- Multi-user concurrency. Ensure the database handles simultaneous writes without lost-update errors.
- Web version. Rewrite the front-end in ASP.NET Core or React for a modern deployment path.
Official documentation
Frequently Asked Questions
How does this VB.NET DataGridView example work?
Demonstrates binding a DataGridView to a DataTable or SQL Server source via ADO.NET. Common patterns: filter rows, edit cells with validation, export to Excel via interop, custom column formatting, search.
What Visual Studio and SQL Server versions does this VB.NET project require?
Most projects use VB.NET WinForms on .NET Framework 4.5+ with SQL Server 2012 Express or higher. To run: install Visual Studio 2019 / 2022 (Community is free) with the ‘Desktop development with .NET’ workload, install SQL Server Express + SSMS, open the .sln file, build, run.
How do I set up the database for this VB.NET project?
Open SQL Server Management Studio (SSMS) and connect to your SQL Server (e.g. localhost\SQLEXPRESS). Right-click Databases, choose Restore Database OR New Database then import the included .sql script. Update the connection string in App.config (or in code-behind Module) with your server name + credentials. Rebuild and run.
Can I use this VB.NET project for a BSIT capstone or thesis?
Yes, VB.NET is one of the most accepted languages by Philippine BSIT panels. Extend it: add role-based access (admin/staff/customer login redirect), Crystal Reports or RDLC reports, dashboards with Chart control, audit log, multi-branch support. Pair with Chapter 1-5 documentation matching your panel’s rubric.
Why am I getting ‘connection error’ or ‘cannot find SQL Server’?
Three common VB.NET issues: (1) Connection error: SQL Server isn’t running. Open SQL Server Configuration Manager and verify SQL Server (SQLEXPRESS) service is started. (2) Wrong server name in connection string. Try .\SQLEXPRESS, (local)\SQLEXPRESS, or your machine name. (3) Login failed: SQL Server is set to ‘Windows-only’ authentication. Switch to Mixed Mode in SSMS Server Properties, Security.
Where can I find more VB.NET projects with source code?
Browse the VB.NET Projects hub for the full library. For C# WinForms alternatives see C# Projects. For ASP.NET web alternatives see ASP.NET Projects. For BSIT capstone idea lists see 150 Best Capstone Project Ideas.







am a beginner in vb will try this
how can i be able to prevent the path of the excel file from changing it again if i transfer to another computer
Thank you
Picture and text both explained the concept neatly… Nice…