How to create an Excel file in Windows Forms
Syncfusion Essential XlsIO is a .NET Excel library used to create, read, and edit Excel documents. Using this library, you can create an Excel document in Windows Forms.
Steps to create an Excel file programmatically:
- Create a new Windows Forms application project.
- Install Syncfusion.XlsIO.WinForms NuGet package as reference to your .NET Framework applications from the NuGet.org.
- Include the following namespaces in the Form1.Designer.cs file.
using Syncfusion.XlsIO; using System; using System.ComponentModel; using System.Windows.Forms;
Imports Syncfusion.XlsIO Imports System.ComponentModel Imports System.Windows.Forms
- Add a new button in Form1.Designer.cs to create Excel file as follows.
private Button btnCreate; private Label label; private void InitializeComponent() { btnCreate = new Button(); label = new Label(); //Label label.Location = new System.Drawing.Point(0, 40); label.Size = new System.Drawing.Size(426, 35); label.Text = "Click the button to view an Excel spreadsheet generated by Essential XlsIO. Please note that MS Excel Viewer or MS Excel is required to view the resultant document."; label.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; //Button btnCreate.Location = new System.Drawing.Point(180, 110); btnCreate.Size = new System.Drawing.Size(85, 26); btnCreate.Text = "Create Document"; btnCreate.Click += new EventHandler(btnCreate_Click); //Create Spreadsheet ClientSize = new System.Drawing.Size(450, 150); Controls.Add(label); Controls.Add(btnCreate); Text = "Create Spreadsheet"; }
Private label As Label Private WithEvents btnCreate As Button Private Sub InitializeComponent() label = New Label() btnCreate = New Button() 'Label label.Location = New Drawing.Point(0, 40) label.Size = New Drawing.Size(426, 35) label.Text = "Click the button to view an Excel spreadsheet generated by Essential XlsIO. Please note that MS Excel Viewer or MS Excel is required to view the resultant document." label.TextAlign = Drawing.ContentAlignment.MiddleCenter 'Button btnCreate.Location = New Drawing.Point(180, 110) btnCreate.Size = New Drawing.Size(85, 26) btnCreate.Text = "Create Document" 'Create Spreadsheet ClientSize = New Drawing.Size(450, 150) Controls.Add(btnCreate) Controls.Add(label) Text = "Create Spreadsheet" End Sub
- Add the following code in btnCreate_Click to create Excel file with simple text.
//Create an instance of ExcelEngine using (ExcelEngine excelEngine = new ExcelEngine()) { //Set the default application version as Excel 2016 excelEngine.Excel.DefaultVersion = ExcelVersion.Excel2016; //Create a workbook with a worksheet IWorkbook workbook = excelEngine.Excel.Workbooks.Create(1); //Access first worksheet from the workbook instance IWorksheet worksheet = workbook.Worksheets[0]; //Insert sample text into cell “A1” worksheet.Range["A1"].Text = "Hello World"; //Save the workbook to disk in xlsx format workbook.SaveAs("Output.xlsx"); }
'Create an instance of ExcelEngine Using excelEngine As ExcelEngine = New ExcelEngine 'Set the default application version as Excel 2016 excelEngine.Excel.DefaultVersion = ExcelVersion.Excel2016 'Create a workbook with a worksheet Dim workbook As IWorkbook = excelEngine.Excel.Workbooks.Create(1) 'Access first worksheet from the workbook instance Dim worksheet As IWorksheet = workbook.Worksheets(0) 'Insert sample text into cell “A1” worksheet.Range("A1").Text = "Hello World" 'Save the workbook to disk in xlsx format workbook.SaveAs("Output.xlsx") End Using
A complete working example of how to create Excel file in Windows Forms can be downloaded from Create-Excel-file.zip
By executing the program, you will get the Excel file as follows.
Take a moment to peruse the documentation, where you can find basic worksheet data manipulation options along with features like Conditional Formatting, worksheet calculations through Formulas, adding Charts in worksheet or workbook, organizing and analyzing data through Tables and Pivot Tables, appending multiple records to worksheet using Template Markers, and most importantly PDF and Image conversions with code examples.
Refer here to explore the rich set of Syncfusion Essential XlsIO features.
An online sample link to generate Excel file.
See Also:
Create an Excel file in ASP.NET Core
Create an Excel file in ASP.NET MVC
Create an Excel file in Xamarin
Starting with v16.2.0.x, if you reference Syncfusion assemblies from trial setup or from the NuGet feed, include a license key in your projects. Refer to link to learn about generating and registering Syncfusion license key in your application to use the components without trail message.