How to Work With Excel Files Using IronXL: A .NET Excel Library
In this article, one of the most popular libraries, IronXL, an Excel library will be used to compare and contrast how to interact with Microsoft Excel documents programmatically in .NET technologies and it will create an Excel spreadsheet environment to read Excel worksheets, write Excel tables, and export spreadsheet files to CSV.
IronXL - Fast Excel Library Features
Documents created in Microsoft Excel can be read and converted to CSV files using the C# IronXL, .NET Excel library. IronXL is a standalone .NET Excel software library that doesn't need Microsoft Office or Microsoft.Office.Interop.Excel or Excel Interop to be installed. It can read several spreadsheet formats and is not just a static library.
IronXL's simple C# API makes it easy to read multiple worksheets, modify, and generate Excel spreadsheets in a .NET environment. It fully supports Xamarin, Linux, macOS, Azure, .NET Core applications, and .NET Framework.
- IronXL, a C# library compatible with both .NET Core and .NET Framework, is among the best for Excel spreadsheets.
- IronXL supports almost every .NET Framework, including Web apps, Windows Forms, and Console.
- IronXL can be used with Linux, macOS, and Windows operating systems.
- IronXL offers quick and easy access to Excel files.
- IronXL is capable of reading a wide range of Excel file types, including XLSX, CSV, XLS, XLST, TSV, XLSM, and more. The functions for importing, updating, and exporting data tables and datasets are only a few of the library's numerous options.
- For the Excel spreadsheet, IronXL is capable of producing calculations.
- IronXL supports numerous data types for Excel columns, including text, integers, dates, currencies, formulas, and percentages.
- IronXL can handle multiple values in the form of dates, currencies, percentages, text, numbers, formulas, and more Excel column data types.
Creating a .NET Core 6 Project
The next sections of this article will show you how simple it is to create/read an Excel file with the IronXL library.
Step 1: Launching a new endeavor to create Excel files.
After starting Visual Studio, select "New Project" from the "File" menu.
In the resulting dialogue box, select the "Console App" .NET Project templates, then click "Next."
New Project
Once the new project's location has been entered in the Location field, you may enter any project name you choose for the Project. Click the Next button to proceed.
Project Configuration
A .NET Framework can be selected using the Framework drop-down option. Here, we're using .NET 6.0, the long-term supported version. Then press Create.
Framework Selection
Get the IronXL library, which is required for the following solution. To do this, enter the following command into the NuGet Package Manager Console:
Install-Package IronXL.Excel
IronXL Installation
Another option is to use the NuGet Package Manager to search for the package "IronXL". Then, select the desired package to download from the list of all NuGet packages related to IronXL.
NuGet Package Manager
Create Excel Using IronXL
With IronXL, you will be able to create new Excel files with just a few lines of code! IronXL can be used to create files in the XLS (an older Excel format) and XLSX (a more current format) as shown in the code samples below.
using IronXL;
public class IronXLExample
{
public static void Main(string[] args)
{
// Create a new workbook
WorkBook workbook = WorkBook.Create();
// Create a new worksheet named "Sheet1"
WorkSheet worksheet = workbook.CreateWorkSheet("Sheet1");
// Set the value of cell A1
worksheet["A1"].Value = "test";
// Save the workbook to a file
workbook.SaveAs("sample1.xlsx");
}
}
using IronXL;
public class IronXLExample
{
public static void Main(string[] args)
{
// Create a new workbook
WorkBook workbook = WorkBook.Create();
// Create a new worksheet named "Sheet1"
WorkSheet worksheet = workbook.CreateWorkSheet("Sheet1");
// Set the value of cell A1
worksheet["A1"].Value = "test";
// Save the workbook to a file
workbook.SaveAs("sample1.xlsx");
}
}
Imports IronXL
Public Class IronXLExample
Public Shared Sub Main(ByVal args() As String)
' Create a new workbook
Dim workbook As WorkBook = WorkBook.Create()
' Create a new worksheet named "Sheet1"
Dim worksheet As WorkSheet = workbook.CreateWorkSheet("Sheet1")
' Set the value of cell A1
worksheet("A1").Value = "test"
' Save the workbook to a file
workbook.SaveAs("sample1.xlsx")
End Sub
End Class
The code above demonstrates the use of the IronXL package to create a new Excel workbook and worksheet. The WorkBook.Create()
method is used to create a new workbook, and then the CreateWorkSheet("Sheet1")
function creates a worksheet tab with the specified name. Changes are saved in a specified location using the SaveAs
method.
Excel Output
To learn more about creating Excel files, check this tutorial to create one in .NET.
Read Data From Excel and Export to an Excel File
Exporting data to the XLSX or XLS formats requires only a few lines of code. Below is an example of source code that can be used to export data from an Excel file into a simple tabular format:
using IronXL;
public class ExcelReadExportExample
{
public static void Main(string[] args)
{
// Load an existing Excel file
var workbook = WorkBook.LoadExcel("Demo file.xlsx");
// Get a worksheet from the workbook
WorkSheet workSheet = workbook.GetWorkSheet("Sheet1");
// Read the value of cell A1
string addressVal = workSheet["A1"].ToString();
Console.WriteLine(addressVal);
// Modify the value of cell A2
workSheet["A2"].Value = "test";
// Save the workbook in multiple formats
workbook.SaveAs("export.xlsx");
// Or save as XLS
workbook.SaveAs("export.xls");
// Or save the specific worksheet as an XLS file
workbook.WorkSheets[0].SaveAs("export.xls");
}
}
using IronXL;
public class ExcelReadExportExample
{
public static void Main(string[] args)
{
// Load an existing Excel file
var workbook = WorkBook.LoadExcel("Demo file.xlsx");
// Get a worksheet from the workbook
WorkSheet workSheet = workbook.GetWorkSheet("Sheet1");
// Read the value of cell A1
string addressVal = workSheet["A1"].ToString();
Console.WriteLine(addressVal);
// Modify the value of cell A2
workSheet["A2"].Value = "test";
// Save the workbook in multiple formats
workbook.SaveAs("export.xlsx");
// Or save as XLS
workbook.SaveAs("export.xls");
// Or save the specific worksheet as an XLS file
workbook.WorkSheets[0].SaveAs("export.xls");
}
}
Imports IronXL
Public Class ExcelReadExportExample
Public Shared Sub Main(ByVal args() As String)
' Load an existing Excel file
Dim workbook = WorkBook.LoadExcel("Demo file.xlsx")
' Get a worksheet from the workbook
Dim workSheet As WorkSheet = workbook.GetWorkSheet("Sheet1")
' Read the value of cell A1
Dim addressVal As String = workSheet("A1").ToString()
Console.WriteLine(addressVal)
' Modify the value of cell A2
workSheet("A2").Value = "test"
' Save the workbook in multiple formats
workbook.SaveAs("export.xlsx")
' Or save as XLS
workbook.SaveAs("export.xls")
' Or save the specific worksheet as an XLS file
workbook.WorkSheets(0).SaveAs("export.xls")
End Sub
End Class
In the preceding example, an existing Excel file is loaded using the LoadExcel
method, which takes the file name and path as an argument. The file is then imported into the WorkBook
object. Worksheets are loaded using the GetWorkSheet
function by specifying the sheet name. The value of a cell can be read by specifying its address. The code also demonstrates modifying a worksheet value and saving the workbook in different file formats using the SaveAs
method.
Console Output
A worksheet can also be referenced either by name or index value to export data from an Excel spreadsheet to a separate file. For more details, visit another tutorial to learn more about exporting Excel files.
Conclusion
From creating new files to carrying out precise calculations, IronXL has you covered for all your Excel projects. Today, we took a closer look at how IronXL can be utilized to create, read, and export Excel files, and saw how with just a few lines of code you can have full control over these processes.
For every programmable activity about Microsoft Excel documents, IronXL offers a comprehensive solution. It is possible to perform formula calculations, sort strings or numbers, cut and add data, search and replace, merge and unmerge cells, visualize data, and save files. With it, you can also set cell data types and validate spreadsheet data. The ability to read and write CSV files enables interaction with Excel data.
IronXL costs $749 upon launch, but customers can opt to pay a one-year membership fee for improvements and product support. IronXL levies an additional security fee that permits unrestricted redistribution. Visit this licensing page to learn more about the specifics of the pricing.
Frequently Asked Questions
How can I create and read Excel files in .NET without Interop?
Using IronXL, you can easily create and read Excel files in .NET without relying on Microsoft Office Interop. You can use the WorkBook.Create()
method to create new Excel files and LoadExcel
to read existing ones.
What are the benefits of using a standalone .NET Excel library?
A standalone .NET Excel library like IronXL offers the advantage of not requiring Microsoft Office or Interop installations. It allows for seamless reading, writing, and exporting of Excel files across different platforms such as Windows, macOS, and Linux.
How can I convert Excel files to CSV format programmatically?
IronXL provides functionality to convert Excel files to CSV format effortlessly. Use the SaveAs
method to export your Excel workbook to a CSV file format.
Which platforms are compatible with IronXL for working with Excel files?
IronXL is compatible with multiple platforms including Xamarin, Linux, macOS, Azure, .NET Core, and .NET Framework, offering flexibility for developers working within different environments.
What types of data can be handled within Excel columns using IronXL?
IronXL supports a wide range of data types including text, integers, dates, currencies, formulas, and percentages for Excel columns, enabling versatile data handling within spreadsheets.
How do I perform calculations in Excel spreadsheets using a .NET library?
With IronXL, you can perform calculations in Excel spreadsheets by utilizing formulas programmatically. This allows you to automate complex calculations and data processing tasks within your Excel files.
Is it possible to work with multiple worksheets in an Excel file using a .NET library?
Yes, IronXL allows you to work with multiple worksheets within an Excel file. You can easily access, modify, and export data across different worksheets using its API.
How can I set up IronXL in a .NET Core project?
To set up IronXL in a .NET Core project, you can install it via the NuGet Package Manager. Use the command Install-Package IronXL.Excel
in the Package Manager Console, or add it through the NuGet Package Manager in Visual Studio.
What licensing and pricing options are available for IronXL?
IronXL offers various licensing options that include a one-year membership fee for improvements and support. Additional costs may be incurred for security features and unrestricted redistribution rights.