# IronXL > The C# Excel Spreadsheet Library. Read and Write Excel documents in .NET Applications. Supports .NET Core and .NET Framework. A single-file summary of the IronXL documentation: 94 pages, each as its own abstract, so a model can read the documentation in one pass rather than fetching every URL. Blog posts are not included — see https://ironsoftware.com/excel/csharp/llms.txt for the link index, and https://ironsoftware.com/excel/csharp/llms-full-catalog.txt for one that covers the blog too. ## Getting Started ### AWS Lambada Support | IronXL https://ironsoftware.com/excel/csharp/get-started/aws/ IronXL provides comprehensive support for AWS Lambda Functions, especially for those using .NET Standard Libraries, Core applications, .NET 5, and .NET 6 projects. To facilitate the development of AWS Lambda Functions, developers can use the AWS Toolkit for Visual Studio. This toolkit simplifies the creation of AWS Lambda Function projects within Visual Studio, and further guidance can be found in AWS documentation. An example code snippet demonstrates how to utilize IronXL within an AWS Lambda Function. The snippet shows how to create a new Excel workbook using IronXL, fill it with data in a structured manner, and convert it into a Base64-encoded string. This example illustrates the seamless integration of IronXL with AWS Lambda, enabling developers to manipulate Excel files within serverless applications. Furthermore, the availability of IronXL NuGet Packages is highlighted, with additional resources provided in the IronXL NuGet installation guide. This integration empowers developers to effectively manage and process Excel files in cloud-based environments using IronXL's robust functionalities. ### Azure Support | IronXL https://ironsoftware.com/excel/csharp/get-started/azure/ The article titled "Azure Support | IronXL" provides a comprehensive guide for integrating and using IronXL with Azure in Excel applications. IronXL supports .NET applications on Azure, capable of generating and reading QR and Barcodes. It has been tested on various Azure platforms, including MVC websites and Azure Functions. The guide begins with instructions on installing IronXL via NuGet. It recommends Azure B1 hosting levels for optimal performance, although higher throughput systems may require upgrades. Both .NET Core and Framework are compatible with Azure, but .NET Standard offers a performance edge, albeit with increased memory usage. The article advises against using Azure's free and shared tiers for QR processing, suggesting the B1 hosting or Premium plan instead. Docker containers are presented as a solution for performance control, with a tutorial available for Linux and Windows. IronXL officially supports Azure Functions V3, with plans to test V4. A sample Azure Function code is provided, demonstrating how to process HTTP requests and return Excel files. Overall, the article serves as a practical resource for deploying IronXL on Azure, ensuring efficient performance and functionality. ### Blazor Read Excel File (Without Using Interop) | IronXL https://ironsoftware.com/excel/csharp/get-started/blazor-read-excel-file-tutorial/ The article titled "Blazor Read Excel File (Without Using Interop) | IronXL" provides an insightful guide on how to read Excel documents in a Blazor server-side application using the IronXL C# library. Blazor, a .NET Web framework by Microsoft, allows the compilation of C# code into browser-compliant JavaScript and HTML. The tutorial outlines simple steps to facilitate the reading of Excel files, starting with the installation of the IronXL Excel library via NuGet Package Manager or by adding a PackageReference in the .csproj file. It guides the creation of a Blazor project in Visual Studio and elaborates on setting up a file upload button in the Blazor application to read Excel files from disk. The tutorial further demonstrates displaying the read data in a table using Razor components. IronXL is highlighted as a superior option to NPOI, offering extensive functions and ease of writing complex logic. It supports the latest .NET versions and provides better licensing and support. The tutorial also includes a sample code for handling file uploads and rendering Excel data as a table. Additionally, it provides links to further resources and API references for extended learning. ### C# Excel Interop Alternatives by IronXL (No Interop Needed) https://ironsoftware.com/excel/csharp/get-started/c-sharp-excel-interop/ The article "C# Excel Interop Alternatives by IronXL (No Interop Needed)" provides a comprehensive guide on utilizing IronXL as an alternative to `Microsoft.Office.Interop.Excel` for handling Excel files in C#. The tutorial highlights the simplicity and efficiency of IronXL, which allows users to read, create, and modify Excel files without the complexities of Interop. Key steps include installing the IronXL library, accessing Excel data using the `WorkBook.Load()` function, and manipulating data with functions like `WorkBook.GetWorkSheet()`. Users can create new Excel files using `WorkBook.Create()`, insert data, and save the files. IronXL also enables modification of existing Excel files, such as updating cell values, replacing values across worksheets, rows, columns, or specific ranges, and removing rows using the `RemoveRow()` function. The article provides code examples for these operations, offering a practical approach to integrating IronXL into C# projects. Additionally, it includes links for further reading on working with Excel DataSets and DataTables, creating new spreadsheets, editing cell values in ranges, and using the range function. The tutorial concludes with a reference to IronXL's API documentation for more detailed information. ### Docker Support | IronXL https://ironsoftware.com/excel/csharp/get-started/docker/ The article titled "Docker Support | IronXL" on Iron Software's website provides a comprehensive guide on using IronXL within Docker containers, including those on Azure for Linux and Windows. The guide highlights the benefits of using Docker, emphasizing its ability to enable developers to package, ship, and run applications as lightweight, portable containers that can operate virtually anywhere. It includes a primer for integrating IronXL with Docker and .NET, suggesting Microsoft's official Docker images for optimal setup. Recommended Linux distributions for easy configuration with IronXL include Ubuntu 24.04 and 22.04, Debian 12, and RHEL/UBI 8 or 9 (Microsoft no longer publishes official CentOS runtime images). The article provides detailed Dockerfiles for these distributions, illustrating how to set up an environment on .NET 8 LTS. It also encourages the use of the IronXL NuGet package for development across Windows, macOS, and Linux. For users new to Docker, the article suggests additional resources like Microsoft's Visual Studio containers documentation and IronXL's Linux setup guide. This guide aims to facilitate smooth deployment and execution of Excel-related applications in a containerized environment. ### Applying Software License Keys for IronXL .NET 10 https://ironsoftware.com/excel/csharp/get-started/license-keys/ The article titled "Applying Software License Keys | IronXL" from Iron Software provides a comprehensive guide on implementing and managing license keys for IronXL in C# applications. The primary purpose of adding a license key is to ensure the unrestricted deployment of projects without watermarks. Users can acquire a license key by purchasing it or signing up for a free 30-day trial. The guide outlines the initial step of downloading and installing the IronXL.Excel library via NuGet Package or direct DLL download. Subsequently, it details the process of applying the license key within the application code, or through Web.Config/App.Config for .NET Framework applications, and appsettings.json for .NET Core applications. It is crucial to verify the successful application of the license using `IronXL.License.IsLicensed`. A known licensing issue is addressed, affecting ASP.NET projects and .NET Framework versions 4.6.2 and above, where keys in Web.config may not be recognized. The article concludes with testing the license key's validity and provides a link to further tutorials on using IronXL. For any inquiries, users are encouraged to contact support@ironsoftware.com. ### Linux Support | IronXL & .NET 10 Compatibility Guide https://ironsoftware.com/excel/csharp/get-started/linux/ The article titled "Linux Support | IronXL" provides a comprehensive guide for setting up and using IronXL, a .NET Standard-based library, in a Linux environment. IronXL is compatible with all Linux distributions that support .NET Core, .NET 5, and .NET 6, as well as Docker, Azure, macOS, and Windows platforms. It recommends using .NET Core 3.1, .NET Core 5, or .NET Core 6 for their long-term support and reliability on Linux. The guide emphasizes that IronXL requires no code changes to function on Linux, thanks to robust testing and configuration. This compatibility is crucial for cloud services like Azure and AWS, which rely heavily on Linux. Officially supported Linux distributions for a seamless setup include Ubuntu 20, Ubuntu 18, Debian 11, Debian 10, CentOS 7, and CentOS 8. The article also advises using Microsoft's official Docker images for these distributions. Additionally, it provides installation instructions using the NuGet package manager. Ubuntu is highlighted as the most tested OS, particularly within Azure's infrastructure. For other Linux distributions, manual configuration might be necessary, but IronXL generally runs without special configurations. The article serves as a valuable resource for developers looking to integrate Excel operations in a Linux setting using IronXL. ### macOS Support | IronXL for .NET 10 https://ironsoftware.com/excel/csharp/get-started/macos/ IronXL has extended its support to include macOS for .NET Standard Libraries, Core applications, .NET 8 LTS, and .NET 10 projects, making it seamless for developers to create, read, and manage Excel files on MacOS using C#. This enhancement allows IronXL to function across all versions of macOS without the need for code modifications, catering to the needs of Apple users and developers. The introduction of macOS support underscores IronXL's commitment to providing versatile solutions, given that many .NET developers prefer working on platforms like JetBrains Rider and Visual Studio Code on macOS. To facilitate the integration of IronXL into Mac environments, NuGet Packages are readily available, and detailed installation guidelines can be found in the IronXL NuGet installation guide. This development reinforces IronXL's adaptability and user-centric approach, ensuring that .NET developers have the tools they need to efficiently work with Excel files across different operating systems, including macOS. ### .NET MAUI Excel in C# (Without Using Interop) | IronXL https://ironsoftware.com/excel/csharp/get-started/read-create-excel-net-maui/ The article provides a comprehensive guide on how to create, read, and modify Excel files in .NET MAUI applications using the IronXL library. IronXL is a C# .NET library that facilitates Excel file manipulation without relying on Microsoft Interop, enabling functionality on Windows machines without requiring Microsoft Office installation. The guide details the installation of IronXL through the NuGet Package Manager in Visual Studio and describes the process of designing an application frontend using XAML in a .NET MAUI project. It outlines how to create Excel files programmatically, including setting cell values, applying formulas, and formatting cell ranges. The guide also explains reading and modifying existing Excel files, emphasizing the use of formulas and custom formatting. Additionally, it provides instructions on saving and viewing Excel files, detailing the implementation of the SaveService class for local storage. The article concludes by highlighting IronXL's efficiency and versatility, supporting various project templates like Windows Form and ASP.NET Core, and offering functionalities such as exporting to CSV and TSV formats. Readers are encouraged to explore further tutorials and access the project source code on GitHub for hands-on experience. ### VB.NET Read Excel File (Without Using Interop) | IronXL https://ironsoftware.com/excel/csharp/get-started/vb-net-excel-files/ The article, titled "VB.NET Read Excel File (Without Using Interop) | IronXL," provides a comprehensive tutorial on using IronXL to manage Excel files in VB.NET projects without relying on Interop. It details an easy-to-follow guide for developers to create and manipulate Excel files, covering formats such as `.xls`, `.xlsx`, `.csv`, and `.tsv`. The tutorial begins with downloading the IronXL library via DLL or NuGet, emphasizing its simplicity for accessing Excel data. It covers creating Excel files, including setting cell properties and inserting data into worksheets. The article illustrates creating multiple worksheets within a workbook, inserting data into individual cells or ranges, and saving files in specified directories. Additionally, it explains how to read data from Excel files by accessing specific worksheets through name or index, extracting data from columns, and applying aggregate functions such as Sum, Min, and Max. Sample code snippets demonstrate these processes, reinforcing the tutorial's practical approach. Lastly, the article mentions additional resources for accessing the IronXL documentation API, offering further insights into leveraging Excel functionalities within VB.NET projects. The tutorial is aimed at making Excel file operations straightforward and efficient for developers using VB.NET. ## Tutorials ### C# Create Excel File in .NET (No Interop Step-by-Step) https://ironsoftware.com/excel/csharp/tutorials/create-excel-file-net/ This comprehensive tutorial demonstrates how to create Excel files programmatically in C# using IronXL, a powerful .NET library that eliminates the need for Microsoft Office or Excel Interop. The guide walks developers through the complete process of building Excel spreadsheets from scratch, starting with library installation via NuGet and project setup in Visual Studio. Readers learn essential Excel operations including creating workbooks and worksheets, setting cell values both manually and dynamically, populating data from databases, and applying professional formatting with colors and borders. The tutorial covers advanced features like Excel formula implementation, worksheet protection with passwords, freeze panes for improved navigation, and print configuration settings. Code examples demonstrate IronXL's intuitive API that uses familiar Excel syntax for cell references and ranges. The tutorial concludes with various save options including XLSX, XLS, CSV, and JSON formats. Perfect for developers building reporting features, data export functionality, or Excel automation in ASP.NET, desktop, or console applications across Windows, Linux, macOS, and cloud platforms. ### C# Write to Excel [Without Using Interop] | IronXL https://ironsoftware.com/excel/csharp/tutorials/csharp-open-write-excel-file/ The IronXL library offers a robust solution for managing Excel files in C# without relying on Microsoft Excel or Interop, making it ideal for .NET projects, including Windows applications and ASP.NET MVC. The tutorial on the IronXL website provides a comprehensive guide to opening, writing, and saving Excel files using C#. It begins with instructions on installing IronXL via NuGet Package Manager or Package Manager Console, or manually using the DLL. Users can download the library and integrate it into their projects through these methods. The tutorial details basic operations like creating or opening workbooks, selecting sheets and cells, and saving workbooks. Advanced operations include adding headers or footers and performing mathematical manipulations. The guide includes code examples, such as using the WorkBook.Load method to read XLS, XLSX, or CSV documents and accessing cell values with intuitive syntax. Additionally, a sample HelloWorld console application demonstrates reading a cell's content from an Excel file using IronXL. The tutorial encourages further exploration with additional resources and API references. IronXL's flexibility in handling various Excel formats and operations makes it a valuable asset for developers aiming to incorporate Excel functionalities into their applications. ### Read Excel Files in C# Without Interop - IronXL Tutorial & Code Examples https://ironsoftware.com/excel/csharp/tutorials/how-to-read-excel-file-csharp/ This comprehensive tutorial demonstrates how to read and manipulate Excel files in C# using the IronXL library, eliminating the need for Microsoft Office or Interop dependencies. The guide covers essential operations including loading XLS and XLSX files, accessing cell values, working with ranges, and applying formulas programmatically. Readers will learn practical implementations such as validating spreadsheet data using regular expressions, exporting Excel data to databases with Entity Framework, and integrating REST API responses into spreadsheets. The tutorial provides production-ready code examples showcasing IronXL's intuitive API, which supports both individual cell manipulation and bulk operations through LINQ. Advanced topics include creating validation reports, formatting cells, and processing large datasets efficiently. Each code example includes detailed explanations of the IronXL methods used, making it accessible for developers new to Excel automation. The tutorial concludes with resources for further learning, including links to API documentation and specialized how-to guides for specific Excel operations. ## How-To Guides ### Add Comments to Excel Cells in C# Without Interop | IronXL https://ironsoftware.com/excel/csharp/how-to/add-comment/ IronXL enables C# developers to add comments to Excel cells without requiring Microsoft Interop. The library provides a simple AddComment() method that can be called on any cell to add notes, annotations, or explanations without affecting cell data. The method accepts three optional parameters: content (string), author (string), and isVisible (boolean), allowing flexible comment creation. Comments are hidden by default but can be made visible for scenarios like training materials or critical instructions. The process requires just five steps: downloading the IronXL library, opening or creating a spreadsheet, using AddComment to add comments, accessing the Comment property to retrieve/edit comments, and using RemoveComment to delete them. IronXL integrates seamlessly with cloud platforms like Azure and AWS Lambda, making it suitable for enterprise applications. This approach eliminates the complexity of traditional Interop methods, providing developers with a straightforward API for Excel manipulation in .NET applications. ### Add, Extract & Remove Images in Excel with C# | IronXL https://ironsoftware.com/excel/csharp/how-to/add-extract-remove-worksheet-images/ IronXL provides C# developers with a comprehensive API for managing images in Excel worksheets without Excel Interop dependencies. The library enables programmatic insertion of images (supporting JPG/JPEG, BMP, PNG, GIF, and TIFF formats) by specifying cell ranges as coordinates, with images automatically scaling to fit within defined boundaries. Developers can extract existing images along with their properties through the Images collection, which allows access to image data, dimensions, and metadata. The removal functionality uses unique image IDs that follow an odd-number sequence (1, 3, 5, 7, etc.) for precise targeting. Key features include the InsertImage method for adding visual elements like logos and charts, the Images property for accessing and extracting image information, and the RemoveImage method for deletion. This functionality is essential for creating data-rich Excel files with visual components, enabling complete control over image manipulation within workbooks. The simple API requires just a few lines of code to perform complex image operations, making it ideal for applications that need to dynamically manage visual content in spreadsheets, whether for report generation, data visualization enhancement, or document processing workflows. ### C# Excel Freeze Panes: Lock Headers & Rows | IronXL https://ironsoftware.com/excel/csharp/how-to/add-freeze-panes/ IronXL's C# Excel library enables developers to programmatically add freeze panes to Excel spreadsheets, a crucial feature for managing large datasets with 50+ rows or columns. The freeze pane functionality locks specific rows and columns in place while allowing the rest of the content to scroll freely, ensuring constant visibility of headers and identifiers. This is particularly valuable for financial reports, employee databases, and inventory lists where maintaining context is essential. The implementation is straightforward using the CreateFreezePane() method with just two parameters: column and row split positions. For example, CreateFreezePane(1, 4) freezes column A and rows 1-4. The method uses zero-based indexing, making column 0 represent column A. An advanced version with four parameters allows pre-scrolled positioning for more complex scenarios. Unlike Excel Interop solutions, IronXL provides a more efficient, server-friendly approach that mimics Excel's native freeze pane functionality. The library simplifies the workflow to just five steps: installing the library, applying the freeze pane method, and exporting to desired file formats. This programmatic control over freeze panes significantly improves data navigation and user experience in .NET applications handling large spreadsheets. ### Add Rows & Columns to Excel in C# - No Interop | IronXL https://ironsoftware.com/excel/csharp/how-to/add-rows-columns/ IronXL is a C# library that enables developers to programmatically insert rows and columns into Excel spreadsheets without using Office Interop. The library provides simple methods like InsertRow/InsertRows and InsertColumn/InsertColumns that allow insertion at any index position with minimal code. For single row insertion, the InsertRow method accepts a zero-based index parameter, automatically shifting existing rows down. The InsertRows method handles multiple row insertions by specifying both starting index and row count. Key considerations include understanding zero-based indexing (Excel row 1 equals index 0 in code), managing table boundaries when working with named tables, and optimizing performance for batch operations. The library maintains existing formatting and formulas while automatically adjusting cell references. IronXL offers a fluent API that simplifies Excel manipulation tasks, enabling developers to modify spreadsheets efficiently with just a few lines of code. The library also supports various export formats and includes comprehensive documentation through its API reference. Common use cases include preparing data templates, expanding datasets dynamically, and programmatically managing Excel files in C# applications without requiring Microsoft Office installation. ### Read Excel Files in ASP.NET MVC with C# - IronXL Guide https://ironsoftware.com/excel/csharp/how-to/asp-net-mvc-read-excel-file/ IronXL provides a seamless solution for reading Excel files in ASP.NET MVC applications using C# without requiring Microsoft Office dependencies. This guide demonstrates how developers can quickly convert Excel data to DataTables for web display with minimal code. The process involves creating an ASP.NET Core Web App (MVC) project in Visual Studio 2022, which offers optimal support for .NET 6+ frameworks and enhanced IntelliSense for IronXL methods. Installation is straightforward through NuGet Package Manager, and the library supports both .NET Framework 4.6.2+ and .NET Core 3.1+. The implementation workflow consists of five simple steps: installing the C# library, loading the Excel file, accessing the worksheet, converting it to a DataTable using the ToDataTable method, and displaying the data in web views. IronXL's approach eliminates the complexity of Interop while providing efficient memory management for processing large Excel files. The guide emphasizes using .NET 6.0 or higher for new projects to leverage improved performance, security features, and better async/await support when converting spreadsheet file types. ### Auto Resize Excel Rows & Columns in C# | IronXL Tutorial https://ironsoftware.com/excel/csharp/how-to/autosize-rows-columns/ IronXL enables automatic Excel row and column resizing in C# through the AutoSizeRow() and AutoSizeColumn() methods, which dynamically adjust cell dimensions based on content without manual formatting. This feature works across all .NET platforms without requiring Excel installation. The AutoSizeRow method automatically calculates optimal row height by analyzing font size, cell content, and formatting attributes, ensuring all text remains visible without truncation. Similarly, AutoSizeColumn adjusts column width based on the longest content in each column, considering text length, number formatting, and date displays. The library supports merged cell calculations and can resize dimensions with a single line of code - workSheet.AutoSizeColumn(0, true) or workSheet.AutoSizeRow(4, true). The auto-resize algorithm factors in font metrics, cell padding, text wrapping settings, borders, and alignment to create professional spreadsheets. This automation is particularly valuable for financial data and reports where proper column sizing enhances readability. By eliminating manual spreadsheet formatting, IronXL streamlines Excel workflows for developers migrating from traditional Excel automation, providing an efficient alternative that integrates seamlessly with other spreadsheet features while maintaining professional presentation standards across automated Excel documents. ### C# Excel Background Pattern & Color Tutorial | IronXL https://ironsoftware.com/excel/csharp/how-to/background-pattern-color/ IronXL is a C# library that enables programmers to customize Excel cell backgrounds with patterns and colors without using Interop. The library provides a straightforward API to enhance spreadsheet visualization through simple method calls. Developers can apply various fill patterns, such as diagonal crosshatch, using the FillPattern property with enums from IronXL.Styles.FillPattern. Colors can be set using either the SetBackgroundColor method or the BackgroundColor property, accepting both Color class objects and hex color codes. The tutorial demonstrates a minimal 5-step workflow: downloading the library, opening/creating a spreadsheet, setting the FillPattern property, applying colors, and exporting patterns. Background styling works seamlessly with other cell formatting features like borders and fonts, and can be combined with conditional formatting for sophisticated visual indicators. The library allows customization of individual cells, columns, rows, or ranges. While IronXL offers extensive pattern options, it currently doesn't support changing the fill pattern color itself. The article provides code examples showing how to load an Excel file, apply a diagonal crosshatch pattern with SeaGreen background to cell A1, and save the styled spreadsheet. ### C# Excel Cell Border & Alignment Tutorial | IronXL Guide https://ironsoftware.com/excel/csharp/how-to/border-alignment/ This article provides a comprehensive guide on setting cell borders and text alignment in C# Excel files using IronXL, a library that eliminates Microsoft Office dependencies. The tutorial demonstrates how to programmatically apply various border styles (such as MediumDashed) to individual cells or cell ranges using properties like TopBorder, RightBorder, BottomBorder, and LeftBorder. It also covers text alignment options through HorizontalAlignment and VerticalAlignment properties, allowing developers to position text precisely within cells. The article includes practical code examples showing how to implement these formatting features with just a few lines of code. Key features highlighted include the ability to work with different border types from the IronXL.Styles.BorderType enum, set custom border colors using hex codes, and apply various alignment options for professional spreadsheet presentation. The guide emphasizes IronXL's advantage of not requiring Microsoft Interop, making it ideal for server environments and applications where Office installation isn't feasible. ### C# Export to Excel: Convert XLSX, CSV, JSON & XML | IronXL https://ironsoftware.com/excel/csharp/how-to/c-sharp-export-to-excel/ IronXL is a C# library that enables developers to export Excel files to multiple formats including XLSX, CSV, JSON, and XML without requiring Microsoft Office dependencies. The library offers simple one-line conversion methods for each export format, making it easy to integrate Excel file manipulation into .NET applications. IronXL supports both modern (.xlsx) and legacy (.xls) Excel formats, as well as data interchange formats ideal for different use cases - CSV for database imports, JSON for web APIs, and XML for enterprise system integration. The library is compatible with .NET Framework, .NET Core, and .NET 5+ applications, and can be deployed to various environments including Azure and Docker. Installation is straightforward via NuGet package manager or direct DLL download. The API provides intuitive methods like WorkBook.Load() for importing files and SaveAsJson(), SaveAsCsv(), and SaveAsXml() for exporting to different formats. IronXL handles all spreadsheet file type conversions internally while preserving data integrity, eliminating the need for complex boilerplate code and making Excel file manipulation accessible to developers with minimal setup. ### Open Excel Worksheets in C# | IronXL Tutorial Guide https://ironsoftware.com/excel/csharp/how-to/c-sharp-open-excel-worksheet/ This tutorial explains how to open Excel worksheets in C# using IronXL library. The library provides simple methods - WorkBook.Load() and GetWorkSheet() - to access various Excel file formats including .xlsx, .xls, .csv, and .tsv with just two lines of code. IronXL eliminates the need for Excel Interop, offering a streamlined solution with faster response times and minimal code requirements. The tutorial outlines a 5-step workflow: installing the C# library, loading Excel files into WorkBook objects, selecting worksheets, accessing cell data, and retrieving data from rows and columns. The library can be installed via DLL or NuGet package manager and supports deployment across multiple platforms including Linux, macOS, and Docker containers. The WorkBook.Load() function accepts a file path parameter to load spreadsheets, making it simple to start reading or editing Excel data programmatically. This approach is essential for business applications that require Excel data manipulation without complex setup or interop dependencies. ### C# Read XLSX Files Tutorial - Load Excel Data | IronXL https://ironsoftware.com/excel/csharp/how-to/c-sharp-read-xlsx-file/ This tutorial demonstrates how to read XLSX files in C# using IronXL, a .NET library for Excel manipulation. IronXL simplifies Excel file handling by providing the WorkBook.Load method to open XLSX files in a single line of code. The library supports both .xls and .xlsx formats, automatically detecting file types including XLS, XLSX, XLSM, XLTX, and CSV. The tutorial covers the essential steps: installing IronXL via NuGet or direct download, loading a workbook using WorkBook.Load("your-file.xlsx"), and accessing worksheets through multiple methods - by name, index, or using FirstOrDefault/First methods. Once a worksheet is accessed, developers can read cell values, perform calculations using functions like Sum, Min, and Max, and convert worksheet data to DataTable or DataSet formats for further processing. IronXL provides a straightforward API that eliminates the need for Microsoft Office installation on the server, making it ideal for programmatic Excel manipulation in C# applications. The library is free for development use and offers comprehensive documentation for advanced scenarios. The tutorial emphasizes IronXL's simplicity, showing how developers can start reading Excel data with minimal code while maintaining full access to Excel functionality. ### C# Excel Cell Font & Size Tutorial | IronXL Guide https://ironsoftware.com/excel/csharp/how-to/cell-font-size/ IronXL enables C# developers to programmatically set Excel cell font properties without Microsoft Office interop. The library provides simple APIs to customize font attributes including name, size, color, bold, italic, underline, strikeout, and script positioning through straightforward properties like `workSheet["A1"].Style.Font.Height = 18`. This functionality improves document readability, emphasizes critical information, and creates visually appealing spreadsheets. The tutorial demonstrates both basic font customization (setting font family via the Name property, adjusting size with Height property, and emphasizing with Bold property) and advanced options (italic styling, strikeout effects, superscript/subscript via FontScript, and color customization). IronXL's approach eliminates the need for complex Office interop dependencies, simplifying Excel manipulation in .NET applications. Developers can target specific cells, columns, rows, or ranges for styling, making it ideal for creating professional documents and complex Excel reports. The library matches Excel's native formatting capabilities while providing a cleaner, more maintainable codebase for C# applications that need to generate or modify Excel files programmatically. ### Clear Excel Cells in C# - IronXL ClearContents Method https://ironsoftware.com/excel/csharp/how-to/clear-cells/ IronXL's ClearContents() method enables developers to efficiently remove data from Excel cells in C# while preserving formatting. This powerful feature works without requiring Microsoft Excel installation and operates seamlessly across Windows, Linux, and macOS platforms. The method can clear single cells, ranges, rows, or columns with just one line of code, making it ideal for automated workflows. Common applications include removing outdated data, resetting cell values, cleaning spreadsheet layouts, preparing templates, and correcting data entry errors. Unlike Excel Interop alternatives, IronXL simplifies the process significantly - developers can clear any cell range instantly using workSheet["D6:F9"].ClearContents(). The method specifically removes only data values and formulas while maintaining all cell styling properties including borders, fonts, colors, and alignment patterns. This preservation of formatting ensures consistent spreadsheet appearance during data operations. Single cell clearing provides precision control for targeted data removal, while the ability to clear ranges enables efficient bulk operations. The straightforward API requires minimal steps: load the spreadsheet, select the target range, and invoke ClearContents(). This functionality proves essential for programmatic Excel file editing in C# applications, offering a cleaner alternative to traditional methods. ### C# Excel Conditional Formatting Guide | IronXL Tutorial https://ironsoftware.com/excel/csharp/how-to/conditional-formatting/ IronXL provides a simple C# API for applying conditional formatting to Excel spreadsheets without requiring Interop. This tutorial demonstrates how to programmatically create formatting rules using comparison operators and custom styling options, then apply them to specific cell ranges. The library supports adding, retrieving, and removing conditional formatting rules with various styling capabilities including font adjustments, borders, alignment, background patterns, and colors. With IronXL, developers can implement conditional formatting in just a few lines of code - creating rules with the CreateConditionalFormattingRule method and applying them using AddConditionalFormatting. The tutorial shows a quickstart example that applies a "less than" rule to highlight cells with values below 8 in a specified range (A1:A10). IronXL's conditional formatting features work seamlessly with other Excel functionality like formulas and cell data formats, making it ideal for both creating new spreadsheets and working with existing Excel files. The library simplifies the process of visually emphasizing data that meets specific criteria, enhancing data analysis and spreadsheet readability through programmatic control. ### Convert Excel to CSV, JSON & XML in C# | IronXL Guide https://ironsoftware.com/excel/csharp/how-to/convert-spreadsheet-file-types/ IronXL is a C# library that enables developers to convert spreadsheets between multiple file formats including XLS, XLSX, CSV, JSON, XML, and HTML using simple Load and SaveAs methods. The library supports various inline code data types such as HTML strings, binary data, byte arrays, DataSets, and MemoryStreams, making it an essential tool for .NET developers working with Excel files across different platforms. The conversion process is straightforward - developers use the Load method to open a spreadsheet file and then use dedicated methods like SaveAsCsv, SaveAsJson, SaveAsXml, or ExportToHtml to export to the desired format. Each method is optimized for its specific format, ensuring data integrity and proper formatting. For formats like CSV, TSV, JSON, and XML, IronXL creates separate files for each worksheet following a specific naming convention. The library's flexibility makes it ideal for building data migration tools, reporting systems, and business intelligence applications where seamless format conversion is crucial for compatibility with various systems and user requirements. With minimal code, developers can quickly implement file conversions without complex configuration. ### Copy Excel Cells in C# - Examples & Tutorial | IronXL https://ironsoftware.com/excel/csharp/how-to/copy-cells/ IronXL provides a powerful Copy method for duplicating Excel cells, ranges, rows, and columns in C# applications. This single-line method preserves all formatting, styling, and data attributes while copying content between any locations or worksheets. The Copy functionality accepts two parameters: a destination worksheet and starting position, making it simple to replicate data within the same sheet or across different sheets. The method comprehensively preserves cell properties including values, formulas, number formats, font styling, borders, background colors, text alignment, and cell protection settings. This ensures copied cells maintain their original appearance and functionality, similar to using Ctrl+C and Ctrl+V in Microsoft Excel. The tutorial demonstrates copying single cells with just a few lines of code, requiring only loading the workbook, selecting the source range, and invoking the Copy method with the destination parameters. This feature is essential for efficient Excel automation tasks such as creating summary reports, consolidating data from multiple sources, or building spreadsheets programmatically. IronXL's Copy functionality streamlines Excel manipulation in C# by providing a straightforward API that handles complex copying operations while maintaining data integrity and visual formatting. ### Create New Excel Spreadsheets in C# | IronXL Tutorial https://ironsoftware.com/excel/csharp/how-to/create-spreadsheet/ IronXL simplifies creating Excel spreadsheets in C# through its WorkBook.Create() method, which generates XLSX or XLS files without requiring Excel interop dependencies. The library's straightforward API allows developers to create workbooks with a single line of code, defaulting to the modern XLSX format. The process involves downloading the IronXL library, using the static Create method to initialize a new workbook, adding worksheets, setting cell values, and saving the file. When WorkBook.Create() is called, IronXL initializes an empty in-memory workbook object that requires at least one worksheet before data manipulation. The library defaults to XLSX format because it's the current industry standard, offering better compression, improved data recovery, smaller file sizes, and support for modern Excel features including larger worksheets with up to 1,048,576 rows by 16,384 columns. IronXL seamlessly integrates with .NET applications, making it an efficient solution for programmatically generating Excel files. The tutorial demonstrates a minimal 5-step workflow from creating a workbook to exporting the final Excel file, with comprehensive API documentation available for advanced features. ### C# Convert XLSX to CSV, JSON, XML Without Excel | IronXL https://ironsoftware.com/excel/csharp/how-to/csharp-convert-xlsx-to-csv/ IronXL is a C# library that enables developers to convert Excel XLSX files to multiple formats including CSV, JSON, XML, and older XLS formats without requiring Excel Interop. The library simplifies file conversion with one-line commands, eliminating the need for manual parsing. Key features include converting XLSX to CSV with a single line of code: `IronXL.WorkBook.Load("input.xlsx").SaveAsCsv("output.csv")`. The tool supports various use cases such as migrating data between systems, creating web application exports, and integrating with legacy systems. Each format serves specific purposes - CSV for database imports, JSON for REST API integration, and XML for maintaining hierarchical data relationships. IronXL is compatible with .NET MAUI, Blazor, and traditional .NET applications, and can be easily installed via NuGet Package Manager. The library automatically handles complex parsing and formatting tasks, including special character management, multi-line cells, and proper escaping during conversion. This makes it an efficient solution for developers needing to work with Excel files programmatically in C# applications without the overhead of Excel Interop dependencies. ### C# Create Excel Charts Programmatically | IronXL Guide https://ironsoftware.com/excel/csharp/how-to/csharp-create-excel-chart-programmatically/ IronXL enables C# developers to programmatically create Excel charts with minimal code. Using the CreateChart() method, developers can generate various chart types including column, line, pie, bar, area, and scatter charts. The process involves just six steps: installing IronXL via NuGet Package Manager, loading an Excel workbook, creating a chart with CreateChart(), adding data series with AddSeries(), configuring title and legend properties, and calling the Plot() method. The library can create charts in as few as five lines of code, making Excel visualization straightforward. IronXL supports multiple Excel formats (XLS, XLSX, CSV, TSV) and can work with both new and existing spreadsheets. Installation is simple through Visual Studio's NuGet Package Manager by searching for "IronXL.Excel" or via command line. The example demonstrates creating a column chart for sales data, setting the title to "Sales Overview," positioning the legend at the bottom, and saving the result. This approach eliminates the need for complex Excel automation, providing a clean programmatic interface for chart generation in .NET applications. ### C# DataTable to CSV Export: Easy IronXL Conversion Guide https://ironsoftware.com/excel/csharp/how-to/csharp-datatable-to-csv/ IronXL provides a simple solution for converting C# DataTable to CSV format without requiring Microsoft Excel or complex coding. The library enables one-line CSV export through its SaveAsCsv() method, eliminating the need for manual loops or Interop dependencies. The conversion process involves installing IronXL via NuGet Package Manager, creating a WorkBook object, populating it with DataTable rows, and calling the SaveAsCsv() function. This streamlined approach significantly reduces the complexity typically associated with data export operations. The minimal workflow consists of five steps: installing the IronXL library, utilizing the DataTable class for data storage, creating or importing a spreadsheet, populating worksheet cells with table data, and exporting to CSV format. IronXL handles various Excel formats and provides comprehensive support for importing and exporting DataSet and DataTable objects, making it particularly suitable for database-driven applications. The library's built-in CSV writing functionality offers superior performance compared to traditional file streaming methods or manually building CSV strings, providing developers with an efficient solution for data export requirements in C# applications. ### C# Edit Excel Files Without Interop | IronXL Tutorial https://ironsoftware.com/excel/csharp/how-to/csharp-edit-excel-file/ This tutorial demonstrates how to edit Excel files in C# using the IronXL library, which provides a simple alternative to Excel Interop. IronXL enables developers to programmatically modify cells, rows, columns, and worksheets without requiring Microsoft Office dependencies, reducing complexity and error risk. The guide covers essential operations including editing specific cell values, modifying entire rows and columns, replacing spreadsheet values, and removing rows or worksheets. The tutorial begins with a quickstart example showing how to load an Excel file, update a cell value, and save changes in just a few lines of code. IronXL supports cross-platform development on Windows, Linux, and macOS, making it versatile for various development environments. The library can be installed via NuGet package manager and is free for development use. The tutorial provides step-by-step instructions and code examples for common Excel editing tasks, emphasizing precision and efficiency in programmatic Excel manipulation. By eliminating Interop dependencies, IronXL simplifies Excel file editing in C# applications while reducing the risk of document corruption that can occur with traditional approaches. ### Create & Edit Excel Charts in C# Without Interop | IronXL https://ironsoftware.com/excel/csharp/how-to/csharp-excel-chart-create-edit-tutorial/ IronXL is a C# library that enables developers to create, edit, and remove Excel charts programmatically without requiring Excel Interop dependencies. The library supports various chart types including column, line, pie, bar, area, and scatter charts through a simple API. To create a chart, developers use the CreateChart method to specify chart type and position, AddSeries to add data series, and Plot to render the chart. The process involves loading a workbook, calling CreateChart with parameters for chart type and location coordinates, adding data series by specifying cell ranges for horizontal and vertical axis values, optionally setting titles and legend positions, and finally plotting the chart. The library offers a streamlined workflow that requires minimal code - just a few lines can create and customize professional Excel charts. This makes IronXL an efficient solution for C# developers who need to generate Excel visualizations programmatically, whether for reports, dashboards, or data analysis purposes. The library eliminates the overhead and complexity associated with Excel Interop while providing comprehensive charting capabilities. ### C# Excel Cell Merge & Unmerge Tutorial | IronXL Guide https://ironsoftware.com/excel/csharp/how-to/csharp-excel-merge-cells/ IronXL provides C# developers with a straightforward way to merge and unmerge Excel cells without requiring Excel Interop. Using simple methods like Merge("B3:D3") and Unmerge(), developers can combine multiple adjacent cells into larger cells or split them back into individual cells. The library offers a minimal workflow: load a workbook, apply the merge method to a specified range, and save the file. When cells are merged, they combine without erasing existing values, though only the first cell's value is displayed while other values remain accessible through IronXL. This functionality is particularly useful for creating formatted headers and working with Excel templates. However, merging cells within filter ranges can cause Excel conflicts requiring file repair. The merging process treats combined cells as a single unit, which can interfere with Excel features like sorting and filtering. IronXL simplifies these operations with just a few lines of code, making it ideal for developers who need to programmatically format Excel spreadsheets with merged cells for better presentation and alignment. ### Import Excel Files in C# Tutorial | No Interop | IronXL https://ironsoftware.com/excel/csharp/how-to/csharp-import-excel/ IronXL is a C# library that enables developers to import Excel files with minimal code, eliminating the need for Microsoft Office Interop dependencies. The library supports multiple file formats including XLSX, XLS, CSV, and TSV, allowing developers to load spreadsheets with just one line of code using the WorkBook.Load() method. Once loaded, users can immediately access cells, ranges, and worksheets for data manipulation. The tutorial outlines a five-step workflow: downloading and installing the IronXL library, preparing Excel files, using the Load method to import spreadsheets, editing files through intuitive APIs, and exporting edited files in various formats. IronXL provides a comprehensive C# Excel API that simplifies Excel operations, making it particularly suitable for server environments and cloud deployments where Microsoft Office installation is impractical. The library offers various installation methods including DLL download and NuGet package installation, and includes built-in support for aggregate functions like SUM, AVG, MIN, and MAX for data analysis tasks. ### C# Read CSV Files: Quick Tutorial with IronXL Library https://ironsoftware.com/excel/csharp/how-to/csharp-read-csv-file/ IronXL provides a streamlined solution for reading CSV files in C# through its LoadCSV method, offering a one-line implementation for .NET developers. The library enables quick CSV file loading with support for custom delimiters (commas, semicolons, tabs, pipes) and direct conversion to Excel formats like XLSX. Installation is simple via NuGet Package Manager in Visual Studio or direct download. The basic implementation requires only importing the IronXL namespace and using WorkBook.LoadCSV() with specified parameters for file format and delimiter. Advanced features include handling different encodings (UTF8), accessing specific cells after loading, and iterating through rows. IronXL supports various deployment environments including Docker containers, Azure Functions, and AWS Lambda for cloud-based CSV processing. The library seamlessly integrates with MVC, ASP.NET, and .NET Core applications, making it an efficient tool for programmatic CSV manipulation. With minimal code requirements, developers can read CSV data, process it, and save it in Excel format, significantly reducing the complexity of CSV handling in C# applications while maintaining flexibility for custom configurations and enterprise deployment scenarios. ### Write CSV Files in C# .NET with IronXL | Step-by-Step https://ironsoftware.com/excel/csharp/how-to/csharp-write-to-csv-file/ IronXL offers a streamlined approach to writing CSV files in C# .NET applications by converting Excel workbooks to CSV format with minimal code. The library eliminates the need for manual parsing, allowing developers to load existing Excel files and save them as CSV using a single line of code: `IronXL.WorkBook.Load("MyExcel.xlsx").SaveAsCsv("MyExcel.csv")`. The tutorial covers the complete process, starting with installing IronXL through Visual Studio's NuGet Package Manager or command line. After adding the IronXL namespace to your project, you can create or load Excel workbooks containing your data. The library automatically handles data types, special characters, and formatting during the conversion process. IronXL supports saving entire workbooks or specific worksheets to CSV format, making it ideal for data exchange between applications, creating reports, or system integration. The simple API design means developers can implement CSV writing functionality without dealing with the complexities of manual CSV parsing or formatting, significantly reducing development time and potential errors in data handling. ### Edit Excel Formulas in C# - IronXL Formula Tutorial https://ironsoftware.com/excel/csharp/how-to/edit-formulas/ IronXL is a C# library that enables developers to edit Excel formulas programmatically without requiring Microsoft Office installation. The library allows users to set formulas using the Formula property on cells, retrieve calculated results through FormattedCellValue, and recalculate all formulas using the EvaluateAll() method. Supporting over 165 Excel formulas, IronXL ensures dynamic updates when cell values change, making it ideal for automating data analysis tasks. The library provides a simple workflow: load or create an Excel file, edit formulas by setting the Formula property, retrieve results, and export the modified file. IronXL runs on Windows, Linux, and macOS platforms, requiring .NET Framework 4.6.2+ or .NET Core 2.0+. It handles complex formula dependencies automatically and delivers fast processing without external dependencies. The library eliminates the need for Microsoft Office Interop while providing intuitive access to Excel functionality. Installation is straightforward via NuGet Package Manager, and the minimal code example demonstrates how to update a cell formula and recalculate results in just a few lines of code. IronXL's lightweight architecture and cross-platform compatibility make it an efficient solution for Excel formula manipulation in C# applications. ### Edit Excel Metadata in C# - Set Author & Title | IronXL https://ironsoftware.com/excel/csharp/how-to/edit-workbook-metadata/ IronXL enables C# developers to programmatically edit Excel metadata without requiring Microsoft Interop. The library provides a simple Metadata property interface to modify document properties including title, author, subject, keywords, creation date, and modification date. This functionality streamlines spreadsheet organization and enhances file searchability, particularly when managing multiple Excel files. The process involves loading a workbook using IronXL.WorkBook.Load(), accessing the Metadata property, modifying desired fields (such as workBook.Metadata.Author = "Your Name"), and saving the changes. IronXL supports various spreadsheet formats including XLSX, XLS, and CSV. The library allows both individual file metadata editing and batch processing of multiple Excel files, making it ideal for automated document management workflows. Developers can combine metadata editing with other Excel operations, enabling comprehensive spreadsheet manipulation in just a few lines of clean C# code. This approach eliminates the complexity of traditional Interop methods while providing full control over Excel document properties for improved file organization and categorization. ### Import & Export DataSet/DataTable in C# Excel | IronXL https://ironsoftware.com/excel/csharp/how-to/export-dataset-datatable/ IronXL provides seamless conversion between Excel workbooks and .NET DataSets/DataTables through simple method calls. The library enables developers to import DataSets into Excel workbooks using `LoadWorkSheetsFromDataSet()` and export workbooks as DataSets using `ToDataSet()`. Each Excel worksheet automatically maps to a corresponding DataTable, preserving column headers and data types during conversion. The process is straightforward - creating a workbook and converting it to a DataSet requires just one line of code with optional first-row header recognition. When importing DataSets, each DataTable becomes a separate worksheet with the table name serving as the worksheet name. This functionality is particularly useful for C# applications that need to work with Excel files while maintaining familiar .NET data structures, making it ideal for data-driven applications that require integration between Excel and database operations. The library simplifies complex data transformations and provides a bridge between Excel's spreadsheet format and .NET's in-memory data representation, enabling efficient data manipulation and transfer between different data sources. ### C# Excel Row Column Grouping - IronXL Tutorial Guide https://ironsoftware.com/excel/csharp/how-to/group-and-ungroup-rows-columns/ IronXL provides a comprehensive C# solution for programmatically grouping and ungrouping rows and columns in Excel spreadsheets without requiring Interop dependencies. This functionality enables developers to create collapsible sections that enhance data organization and navigation in large datasets. The library offers simple methods like GroupRows, UngroupRows, GroupColumns, and UngroupColumns that can be applied to worksheets with just a few lines of code. Row grouping is particularly useful for hierarchical data structures such as organizational charts, financial statements with subcategories, and project timelines, while column grouping helps manage wide spreadsheets with multiple data categories. The grouping feature follows zero-based indexing and can only be applied to cells containing values. IronXL's intuitive API makes it easy to create nested groups, allowing users to expand or collapse sections as needed for focused data analysis. This capability is valuable for building financial reports, managing inventory data, organizing employee records, and creating any spreadsheet where hierarchical data organization improves usability. The library enables quick implementation with a minimal workflow: load a workbook, apply grouping methods to the desired worksheet, and save the results in various Excel formats. ### Create Excel Hyperlinks in C# | Add Links with IronXL https://ironsoftware.com/excel/csharp/how-to/hyperlinks/ IronXL is a C# library that enables developers to create various types of hyperlinks in Excel spreadsheets without using Interop. The library supports adding clickable references including URLs, file paths, email addresses, and cell references, enhancing spreadsheet navigation and interactivity. With just a few lines of code, developers can create workbooks, set cell values, assign hyperlinks, and save files. The process is straightforward - after installing IronXL in a .NET project, developers can use the Hyperlink property of the Cell class to add links. IronXL supports .NET Framework 4.6.2+ and .NET Core/5/6/7/8+, making it compatible with most modern .NET applications. The library simplifies programmatic Excel manipulation for business applications by providing an intuitive API for creating interactive spreadsheets. Hyperlinks can reference locations within the workbook, external files from local or FTP file systems, web pages, email addresses, and defined name cells. This functionality is essential for developers who need to work with Excel files programmatically, allowing them to create user-friendly spreadsheets that facilitate easy access to related information and external resources without the complexity of traditional Interop approaches. ### Load Excel Files in C# with IronXL | Complete Guide https://ironsoftware.com/excel/csharp/how-to/load-spreadsheet/ IronXL is a C# library that enables developers to load and manipulate Excel files in .NET applications. Using the `WorkBook.Load()` method, developers can easily import various spreadsheet formats including XLSX, XLS, XLSM, XLTX, CSV, and TSV files. The library also supports loading CSV files specifically with `LoadCSV()` and can handle password-protected workbooks by passing credentials as a parameter. Beyond file loading, IronXL provides integration with ADO.NET DataSet objects, allowing seamless data exchange between databases and spreadsheets through the `LoadWorkSheetsFromDataSet` method. The library accepts data from multiple sources including file paths, byte arrays, and streams using dedicated methods like `FromByteArray` and `FromStream`. With just a single line of code—`IronXL.WorkBook workbook = IronXL.WorkBook.Load("sample.xlsx")`—developers can quickly load existing spreadsheets for data extraction, manipulation, or analysis. This functionality makes IronXL an essential tool for business applications, automated reporting systems, and data analysis projects that require spreadsheet processing capabilities in .NET environments. ### C# Excel Worksheet Management Without Interop | IronXL https://ironsoftware.com/excel/csharp/how-to/manage-worksheet/ IronXL is a C# library that enables Excel worksheet management without requiring Office Interop dependencies. The library provides a simple API for creating, deleting, moving, and copying worksheets through straightforward method calls, eliminating the complexity of COM object management and explicit resource cleanup associated with traditional C# Excel Interop approaches. Key features include the ability to create new worksheets with CreateWorkSheet, reorder sheets using SetSheetPosition, set active tabs with SetActiveTab, and remove worksheets via RemoveWorkSheet. The library follows zero-based indexing conventions consistent with C# collections, making it intuitive for developers. IronXL simplifies common worksheet operations that would otherwise require extensive boilerplate code, offering single-line solutions for tasks like worksheet creation. The article emphasizes best practices such as understanding when to use each method, avoiding common pitfalls like attempting to remove all worksheets or using duplicate names, and verifying worksheet existence before performing operations. This approach significantly reduces development time and complexity for Excel automation tasks in C# applications while providing full programmatic control over worksheet management operations. ### C# Excel Math Functions: Sum, Avg, Min, Max | IronXL https://ironsoftware.com/excel/csharp/how-to/math-functions/ IronXL is a .NET library that enables developers to perform Excel math functions directly in C# without requiring Microsoft Office Interop. The library provides built-in aggregation methods including Sum(), Avg(), Min(), and Max() that work on any cell range with simple one-line implementations. These functions automatically handle various numeric formats (integers, decimals, currency, percentages) while ignoring non-numeric content. IronXL streamlines Excel automation workflows for financial reports, sales analysis, and scientific data processing in .NET applications. The library offers exceptional performance compared to manual cell iteration when processing large datasets. Developers can quickly compute aggregate values by loading an Excel file, selecting the desired range, and invoking the appropriate math function. The methods mirror Excel's built-in functions, making it intuitive for those familiar with Excel formulas. IronXL's math functions are valuable tools for deriving meaningful insights from spreadsheet data, eliminating the need for Microsoft Office installation while maintaining compatibility with Excel file formats. ### Add Named Range in Excel with C# | IronXL Tutorial https://ironsoftware.com/excel/csharp/how-to/named-range/ This tutorial demonstrates how to add, retrieve, and manage named ranges in Excel using C# and the IronXL library. Named ranges are cell ranges identified by unique names instead of cell addresses (e.g., "SalesData" instead of "A1:B10"), making formulas more readable and maintainable. The article shows how to create named ranges with a single line of code using IronXL's SaveAsNamedRange method, following Excel naming conventions that require names to start with letters or underscores and avoid spaces. It covers the complete workflow from selecting target ranges with workSheet["A1:A5"] syntax to adding named ranges via the AddNamedRange method. The tutorial also explains how to retrieve all named ranges using the GetNamedRanges method, which returns a list of strings containing all named range identifiers in the worksheet. Additionally, it demonstrates removing named ranges with the RemoveNamedRange method. The guide emphasizes that named ranges are particularly valuable when working with Excel formulas in C#, as they enhance code readability and maintainability while integrating seamlessly with IronXL's range selection capabilities and worksheet management features. ### Add Named Tables in Excel with C# | IronXL Tutorial https://ironsoftware.com/excel/csharp/how-to/named-table/ IronXL enables developers to create Excel named tables in C# using the AddNamedTable method, which accepts parameters for table name, range, and optional styling. Named tables, also known as Excel Tables, provide enhanced data organization capabilities including automatic formatting, built-in filtering, and seamless formula integration. The library offers a simple one-line implementation where developers can define the table name, specify the data range (like "A1:B5"), set filter visibility, and apply predefined table styles. The AddNamedTable method streamlines the process of creating structured datasets in Excel automation workflows. Developers can easily select target ranges using worksheet indexers, add named tables with customizable properties, retrieve existing tables through various methods, and export the modified Excel files in multiple formats. The functionality supports various professional styling options through the TableStyle class, allowing instant formatting that complements other Excel features like cell styling and borders. This makes IronXL particularly useful when working with DataSet and DataTable imports where structured data requires proper organization within Excel spreadsheets. ### C# Excel Range Selection Without Interop | IronXL Guide https://ironsoftware.com/excel/csharp/how-to/select-range/ IronXL provides C# developers with a powerful, Office Interop-free solution for Excel range selection and manipulation. The library offers intuitive syntax for selecting cells, rows, and columns using simple expressions like `workSheet["A1:C3"]` or methods like `GetRow()` and `GetColumn()`. Developers can perform range selection in just one line of code using `GetRange()`, eliminating the need for complex loops or dependencies. Once ranges are selected, IronXL enables various operations including sorting, calculations, aggregations, and formatting. The library supports combining multiple ranges using the '+' operator and provides programmatic control that mirrors Excel's native functionality. Common use cases include applying styles, iterating through cells, performing mathematical operations, and extracting data. The workflow is streamlined into five simple steps: downloading the library, using bracket notation for range selection, utilizing GetRow/GetColumn methods, and combining ranges as needed. IronXL's flexible API makes range selection straightforward, forming the foundation for comprehensive Excel manipulation tasks while maintaining code simplicity and readability. ### C# Excel Cell Formatting Guide (No Interop) | IronXL https://ironsoftware.com/excel/csharp/how-to/set-cell-data-format/ IronXL provides a powerful C# API for formatting Excel cells without requiring Interop dependencies. Developers can easily apply built-in data formats including currency, percentages, dates, and custom number formats by setting the FormatString property on cells or ranges. The library simplifies Excel formatting through a straightforward workflow: download the IronXL library, open or create a spreadsheet, set the FormatString property on desired cells, columns, rows, or ranges, utilize the BuiltinFormats class for common formats, and export the formatted spreadsheet. The FormatString property's flexibility allows formatting of individual cells or entire ranges, making it ideal for creating professional financial reports, scientific data presentations, or date-based analytics. IronXL also supports string value preservation using the StringValue property, which prevents automatic conversion and maintains exact formatting—particularly useful for product codes or phone numbers. The library includes a comprehensive set of predefined format strings accessible through IronXL.Formatting.BuiltinFormats, enabling developers to quickly implement professional Excel formatting in their C# applications with minimal code and maximum efficiency. ### Password Protect Excel Workbooks in C# | IronXL Tutorial https://ironsoftware.com/excel/csharp/how-to/set-password-workbook/ IronXL is a C# library that enables developers to password-protect Excel workbooks without using Interop. The library provides a simple Encrypt method to secure workbooks with a single line of code. To protect a workbook, developers load the Excel file, call the Encrypt method with their desired password, and save the file. Password-protected workbooks can be accessed by providing the password as a parameter to the Load method. If an incorrect password is used, IronXL throws an exception to ensure security. The library cannot check if a workbook is password-protected before attempting to open it, so developers should implement try-catch blocks to handle authentication failures gracefully. The tutorial demonstrates a minimal 5-step workflow: downloading the IronXL library, accessing password-protected workbooks, applying password protection, removing protection, and exporting encrypted workbooks. This solution eliminates the complexity of traditional Excel automation approaches while providing robust security features for C# applications that need to work with sensitive Excel data. ### C# Password Protect Excel Worksheet - IronXL Tutorial https://ironsoftware.com/excel/csharp/how-to/set-password-worksheet/ IronXL provides a simple way to password protect Excel worksheets in C# using the `ProtectSheet` method. With just one line of code - `workSheet.ProtectSheet("MyPass123")` - developers can apply read-only protection to any worksheet, preventing unauthorized modifications while allowing users to view content. The library offers unique functionality by allowing access to password-protected worksheets without requiring the original password, making it ideal for automated data processing scenarios. IronXL supports protecting multiple worksheets with different passwords and can handle complex workbooks seamlessly. The protection can be easily removed using the `UnprotectSheet` method when modifications are needed. This capability is particularly useful for securing sensitive data in Excel files, controlling access permissions, and maintaining data integrity in enterprise applications. The library simplifies what would otherwise be a complex process, enabling developers to implement worksheet security quickly and efficiently in their C# applications. ### Sort Excel Cells in C# - Column & Range Sorting | IronXL https://ironsoftware.com/excel/csharp/how-to/sort-cells/ IronXL provides a C# library for sorting Excel cells, columns, and ranges with minimal code. The library offers two main sorting approaches: independent column sorting using SortAscending or SortDescending methods, and range sorting based on a specific column using the SortByColumn method. Independent sorting processes each column separately without maintaining row relationships, suitable for unrelated datasets. The SortByColumn method maintains row integrity while sorting, ideal for database-like structures where each row represents a complete record. Both approaches support ascending and descending order for alphabetical and numerical data. The library's fluent API enables sorting with a single line of code, such as workSheet["A1:D10"].SortByColumn("B", IronXL.SortOrder.Ascending). Empty cells are handled automatically, pushed to either the top or bottom of the range during sorting. IronXL integrates seamlessly with various Excel formats and is particularly useful for organizing data in reports, analysis, or presentations. The minimal workflow involves downloading the library, loading or creating a spreadsheet, selecting the range to sort, and applying the appropriate sorting method. ### Trim Excel Cell Ranges in C# Without Interop | IronXL https://ironsoftware.com/excel/csharp/how-to/trim-cell-range/ IronXL is a C# library that enables developers to trim Excel cell ranges without using Office Interop. The library's Trim method removes all empty rows and columns from the borders of selected ranges, making data processing more efficient and reducing file sizes. Developers can trim individual columns, rows, or rectangular ranges with a single API call. The trimming operation scans from the edges inward until it encounters cells containing data, then creates a new range that excludes empty border cells. This is particularly useful when working with spreadsheets that have excess empty cells around actual data, which can interfere with processing and complicate data imports. The Trim method specifically targets border cells and does not remove empty cells located in the middle of ranges. For handling interior empty cells, developers can apply sorting to consolidate them. IronXL's trim functionality provides a clean, straightforward solution for data extraction from Excel files without requiring the Microsoft Office suite, streamlining workflows in just five simple steps: downloading the library, opening a spreadsheet, selecting a range, applying the Trim method, and checking the returned trimmed range. ### C# Write to Excel Files - IronXL .NET Tutorial https://ironsoftware.com/excel/csharp/how-to/write-excel-net/ IronXL is a C# library that simplifies writing data to Excel files programmatically. The library allows developers to access worksheets, write values to specific cells using simple bracket notation, and save changes without complex code. Key features include writing to individual cells, updating cell ranges, and replacing values dynamically. The tutorial demonstrates how to open Excel files, access worksheets, and write data using straightforward syntax like `worksheet["A1"].Value = "Hello, IronXL!"`. IronXL supports various Excel operations including creating new spreadsheets, editing existing files, and managing multiple worksheets. The library eliminates the complexity typically associated with Excel .NET capabilities, making it easy to automate spreadsheet tasks. The tutorial covers essential operations such as writing static values to multiple cells, writing dynamic values to cell ranges, and replacing values in specific rows, columns, or ranges. With minimal code requirements and intuitive methods, IronXL provides a comprehensive solution for Excel automation needs in C# applications, making it ideal for developers who need to programmatically manipulate Excel data. ## Code Examples ### Code Example: Manipulate Worksheet Images in Excel | IronXL https://ironsoftware.com/excel/csharp/examples/add-extract-remove-worksheet-images/ The article "Code Example: Manipulate Worksheet Images in Excel | IronXL" provides a comprehensive guide for developers on handling images within Excel worksheets using IronXL in C# applications. It outlines methods to add, extract, and remove images effectively from Excel sheets. To add images, the InsertImage method is used, supporting various formats like JPG, BMP, PNG, GIF, and TIFF. The method requires specifying the top-left and bottom-right corners to determine the image's dimensions. Examples for inserting images of different sizes, such as 1x1 and 2x2, are provided. For extracting images, the Images property is accessed, offering a list of all images in the sheet. This enables operations like exporting, resizing, and retrieving image data, with images identified by an odd-numbered ID sequence (1, 3, 5, etc.). Code examples demonstrate how to fetch image positions and sizes. Removing images is simplified by using the RemoveImage method, where an image's ID is passed to delete it. The article includes related documentation and resources for further learning and issue reporting. ### Code Example: Excel Aggregate Functions | IronXL https://ironsoftware.com/excel/csharp/examples/aggregate-excel-functions/ The article "Code Example: Excel Aggregate Functions" from IronXL presents a comprehensive guide on leveraging aggregate Excel functions programmatically using C#. It highlights essential functions such as SUM, AVERAGE, COUNT, MIN, and MAX, demonstrating their use through C# code examples. The Sum() method calculates the total sum of a specified range of cells, excluding any non-numerical entries. The article provides C# and VB.NET code snippets showcasing how to implement this function. Similarly, the Avg() method computes the average of a cell range, illustrated with code examples in both languages. The Min() and Max() methods identify the minimum and maximum values within a cell range, respectively, with corresponding code demonstrations. The article emphasizes the flexibility of these functions, which can be applied to single or multiple rows and columns, thereby enhancing data manipulation capabilities in Excel spreadsheets. It also provides links to related documentation, tutorials, and guides, assisting users in further exploring IronXL's functionalities. The guide is designed for developers seeking efficient ways to perform aggregate calculations within Excel using C#, facilitating streamlined data analysis and processing. ### Code Examples: Auto-Resizing Excel Rows & Columns | IronXL https://ironsoftware.com/excel/csharp/examples/auto-resize-rows-and-columns/ The article from IronXL explains how to automatically resize rows and columns in Excel spreadsheets using the IronXL C# library, which can enhance the readability and appearance of spreadsheets while automating manual resizing tasks. The library provides the AutoSizeRow and AutoSizeColumn methods to adjust the height and width of rows and columns, respectively, based on the length of their content. The AutoSizeRow method can also consider the height of merged cells when resizing. An example in C# demonstrates loading an existing Excel workbook, accessing the first worksheet, and using AutoSizeRow to adjust the heights of the first two rows, with the second row considering merged cells. Changes are saved to a new file. Similarly, the AutoSizeColumn method automatically adjusts column widths, with an option to account for merged cells. The example code shows resizing the first and second columns, considering merged cells for the second column, and saving the updated spreadsheet. The article emphasizes that row and column indexing in the provided examples are zero-based, enhancing the utility of IronXL for developers working with C# projects to create professional-looking spreadsheets. ### Code Example: Merge Excel Ranges Tutorial | IronXL for .NET https://ironsoftware.com/excel/csharp/examples/combine-excel-ranges/ The tutorial "Combine Multiple Excel Ranges in C#," featured on IronXL's website, provides a comprehensive guide on merging Excel ranges using the IronXL library in C#. The IronXL library facilitates efficient Excel file manipulation, enabling users to combine multiple IronXL.Range objects with the '+' operator. This tutorial demonstrates the process through a practical example. It begins with loading an existing Excel workbook, "sample.xlsx," and selecting a specific worksheet, "Sheet1." Two ranges are defined within the worksheet: one from A1 to A10 and another from B1 to B10. These ranges are then combined into a single range using the '+' operator. The tutorial further illustrates iterating over each cell in the combined range to perform actions, such as outputting the text content of each cell. This technique, using the '+' operator, streamlines data aggregation from various sections of a worksheet into a unified range. The tutorial provides code in both C# and VB.NET, demonstrating versatility and practical application for developers looking to enhance data organization in Excel files through C# projects. The tutorial also includes links to related documentation and resources for further learning and troubleshooting. ### C# Convert and Export (XLSX, XLS, XLSM, XLTX, CSV) | IronXL https://ironsoftware.com/excel/csharp/examples/convert-excel-spreadsheet/ IronXL provides a robust solution for developers looking to convert and export Excel files in various formats using C#. The tool supports multiple file types, including XLS, XLSX, CSV, JSON, XML, and HTML, catering to diverse application requirements. By utilizing IronXL, developers can efficiently transform Excel data for web integration, API interactions, or further data processing with minimal coding effort. The platform is particularly beneficial for embedding Excel data into web applications as HTML or JSON, or for integrating with databases through conversions to binary, byte arrays, or streams. The article outlines a straightforward five-step process to export Excel files into multiple formats. It begins with loading an existing Excel file into a WorkBook object, which serves as the primary data manipulation hub. The workbook can then be saved as an .xlsx file using the SaveAs method, ensuring compatibility with modern applications. It can also be converted into JSON format for API use or exchanged as lightweight data. The ToDataSet method facilitates seamless database integration by converting the workbook into a .NET-native DataSet object, while the ExportToHtml method allows for direct web page data display. IronXL thus enhances productivity and streamlines data processing tasks for developers. ### Convert Excel in C# to other File Formats | IronXL https://ironsoftware.com/excel/csharp/examples/convert-excel-to-html/ The article "Convert Excel in C# to other File Formats | IronXL" provides a comprehensive guide on converting Excel files to HTML using C#. It highlights the use of the HtmlExportOptions class to customize the HTML output. Important properties include OutputRowNumbers, OutputColumnHeaders, OutputHiddenRows, OutputHiddenColumns, and OutputLeadingSpacesAsNonBreaking, which allow users to control the display of row numbers, column headers, hidden rows, hidden columns, and leading spaces as non-breaking spaces in the HTML file. The article offers a code example illustrating the conversion process. It involves loading an Excel file into a Workbook object, configuring the HtmlSaveOptions settings, and saving the workbook as an HTML file. The code ensures that the HTML output includes or excludes specific elements based on user preferences. The article concludes by providing a confirmation message that informs users about the successful conversion and the location of the output HTML file. Additionally, it links to related documentation and resources for further guidance on using IronXL for Excel file conversions. ### Copy Excel Sheets in C# (Code Example) | IronXL https://ironsoftware.com/excel/csharp/examples/copy-an-excel-worksheet/ The article "Copy Excel Sheets in C# (Code Example)" from IronXL provides a detailed guide on how to duplicate and copy worksheets within and between Excel workbooks using C#. The process involves using the IronXL library to streamline Excel operations programmatically. The article explains two primary methods: the `CopySheet` method for duplicating a worksheet within the same workbook and the `CopyTo` method for copying a sheet to another workbook. The `CopySheet` method requires the name of the new worksheet as a parameter, enabling duplication within the same spreadsheet. Meanwhile, the `CopyTo` method involves specifying a destination workbook and the new worksheet's name, facilitating copying between different workbooks. The provided code example demonstrates these methods, including loading an existing workbook, selecting a worksheet, duplicating within the same workbook, creating a new workbook, and saving the final output. The tutorial emphasizes ease of use and efficiency in managing Excel sheets programmatically, making it a valuable resource for developers seeking to automate Excel operations using C#. Additionally, the article offers links to related documentation and resources for further exploration of IronXL capabilities. ### Code Examples: Creating Excel Line Charts in C# | IronXL https://ironsoftware.com/excel/csharp/examples/create-a-excel-line-chart/ The article "Code Examples: Creating Excel Line Charts in C# | IronXL" provides a detailed guide on generating line charts in Excel using C# and IronXL. It outlines a straightforward process to create visually appealing charts directly from C# code. The tutorial begins with instructions on installing the IronXL library, crucial for working with Excel files in the modern XLSX format. The guide then details how to load or create an Excel workbook and access the default worksheet. Users are instructed to enter data into specific cells, which will serve as the basis for the line chart. The article highlights how to initialize a line chart using the `CreateChart` method and specify the data range through `SetData`. Customization options such as setting a chart title and enabling the legend are demonstrated to enhance clarity. The process concludes with plotting the chart within the worksheet and saving the workbook using the `SaveAs` method. The tutorial emphasizes the importance of having IronXL installed via NuGet to execute the code successfully. This guide serves as a practical resource for developers looking to integrate Excel charting capabilities within their C# applications. ### C# Create Excel SpreadSheet (XLS and XLSX), Code Examples | IronXL https://ironsoftware.com/excel/csharp/examples/create-excel-spreadsheet/ The article on IronXL's website provides a comprehensive guide for creating Excel spreadsheets using C# in .NET applications. It highlights the ease and efficiency with which developers can generate and manage Excel files, emphasizing features such as creating new workbooks, adding worksheets, and inputting data with advanced styling options like text wrapping and borders. This functionality is particularly useful for automating reports, exporting data, and creating dynamic spreadsheets. IronXL supports multiple file formats, including XLS, XLSX, and CSV, ensuring compatibility across various systems. The guide includes a straightforward five-step process to create and style Excel files using IronXL: starting with initializing a WorkBook object, adding a worksheet with a custom name, populating a cell with data (e.g., "Hello World" in cell A1), applying styling such as WrapText for improved readability, and saving the file as an .xlsx document. This method allows developers to focus on core functionalities while simplifying Excel file management. The article also provides links to additional resources, including a how-to guide, sample code, and class documentation, to assist developers in effectively using IronXL for their Excel-related tasks. ### Edit Excel Metadata in C#, Code Examples | IronXL https://ironsoftware.com/excel/csharp/examples/edit-excel-metadata-csharp/ The article titled "Edit Excel Metadata in C#, Code Examples | IronXL" discusses the process of programmatically editing Excel metadata using C# with the IronXL library. This approach enables developers to update or manipulate workbook properties like author, title, and subject without manual input. This capability is particularly useful for automated workflows, large-scale data processing, and integration with systems such as SQL databases. IronXL supports various Excel formats, including XLSX, XLS, and CSV, which helps minimize manual effort and enhances accuracy in reporting and auditing tasks. The article provides a step-by-step guide for modifying Excel metadata, illustrating how to load an Excel file into a WorkBook object, access and update metadata properties, and save the updated workbook as a new file. This method allows developers to automate and streamline the process of managing metadata across multiple Excel files, facilitating dynamic and scalable solutions in enterprise environments. The guide includes sample code and examples to demonstrate the process, thereby enabling efficient metadata management and integration between Excel files and backend systems. ### Excel Conditional Formatting | IronXL https://ironsoftware.com/excel/csharp/examples/excel-conditional-formatting/ The article "Excel Conditional Formatting | IronXL" provides a comprehensive guide on implementing conditional formatting in Excel using the IronXL library in C#. Conditional Formatting allows users to alter cell styles, such as background color and text style, based on specific logical or programmatic rules. The IronXL library facilitates this by supporting methods like CreateConditionalFormattingRule, which creates rules based on Boolean formulas. These rules enable the highlighting of cells when certain conditions are met, such as a cell's value being greater than a specified number. The article includes a practical example where a workbook is loaded, and conditional formatting is applied: if the value in cell "A1" exceeds 10, its background color changes to red; if the value in "B1" is between 10 and 20, the font color changes to green. This function is useful for data analysis, allowing users to detect issues and identify trends by visually highlighting important information. Finally, the updated workbook is saved with the new formatting rules applied. The tutorial underscores the ease of enhancing data visualization in Excel through programmatic means using IronXL. ### Excel Formulas in C# (Code Example) | IronXL https://ironsoftware.com/excel/csharp/examples/excel-formulas-csharp/ The article "Excel Formulas in C# (Code Example) | IronXL" provides a comprehensive guide on using IronXL to work with Excel formulas in C# applications. IronXL stands out as a .NET library that supports over 150 Excel formulas with ongoing updates, allowing developers to set and evaluate these formulas without relying on Office Interop. The usage is illustrated through code examples where formulas are assigned to cells using the `Range.Formula` property, such as calculating the square root, performing division, and computing the tangent of values in specified cells. The article outlines steps to utilize Excel formulas within a C# project by first installing IronXL via NuGet, loading the Excel document, setting formulas and values, evaluating the formulas with the `EvaluateAll` method, and finally saving the workbook with all changes. IronXL offers a seamless and efficient way to handle Excel formulas programmatically, without the necessity of having Excel installed on the server or client, making it a highly useful tool for developers working with Excel files in C#. Related resources and documentation links are also provided to assist further learning and troubleshooting. ### How to Set Number Format in Excel Using C# | IronXL https://ironsoftware.com/excel/csharp/examples/excel-number-formats/ The article titled "How to Set Number Format in Excel Using C# | IronXL" provides a guide on formatting numbers in Excel using the IronXL library within a C# environment. It explains the process of utilizing the FormatString property to format cell values in Excel spreadsheets. The tutorial demonstrates how to load an existing Excel workbook using the WorkBook.Load method, access a specific cell or range, and apply a number format using the FormatString property. The example focuses on formatting a cell to display numbers with two decimal places by setting the FormatString to "0.00". This ensures that the cell value is consistently displayed with two decimal places. The article also includes a code snippet showcasing how to implement this in C#, highlighting important steps such as selecting the worksheet, formatting the cell, and saving the modified file using the workbook.SaveAs method. Additionally, it mentions the availability of a downloadable project file and related resources like GitHub links, tutorials, and documentation for further assistance with using IronXL. The guide aims to simplify the process of number formatting in Excel for developers working with C#. ### Excel Print Setup in C#, Code Examples | IronXL https://ironsoftware.com/excel/csharp/examples/excel-print-setup/ The article titled "Excel Print Setup in C#, Code Examples | IronXL" describes how developers can leverage IronXL to configure Excel print settings programmatically using C#. This feature is essential for creating professionally formatted reports, invoices, or documents that require specific print layouts. With IronXL, developers can customize headers and footers to include dynamic content like page numbers and titles, ensuring polished output. The PrintSetup options facilitate adjustments of print margins, paper sizes, and orientation, making documents adaptable for various printers and paper types. The article includes code examples demonstrating how to load an Excel file, modify its print settings, and save the changes. In these examples, a workbook is loaded using the WorkBook.Load method, and the default worksheet's header is set to "My Document" using the Header.Center property. The print setup is further configured with properties like PrintSetup.PaperSize, set to B4, and PrintSetup.PrintOrientation, set to portrait mode. This setup process ensures consistent and high-quality printing output, with the flexibility to switch between color and black-and-white printing for cost-effectiveness. The article also provides links to related documentation and resources for further guidance. ### C# Excel to DataSet, Code Examples | IronXL https://ironsoftware.com/excel/csharp/examples/excel-sql-dataset/ The article titled "C# Excel to DataSet, Code Examples | IronXL" provides a comprehensive guide on converting Excel and other delimited files into a System.Data.DataTable using C#. The tutorial is designed to facilitate the integration of Excel files with SQL databases, leveraging the IronXL library. It supports various file formats, including XLSX, XLS, XLSM, XLTX, CSV, and TSV. The process involves reading the files, validating their existence, and subsequently converting them into DataTable objects, which can be utilized for SQL interoperability or to populate DataGrids. The guide illustrates the use of the ExcelDataReader library to handle Excel files and demonstrates the handling of different file extensions to ensure appropriate data processing. It includes code examples in both C# and Visual Basic, detailing a method to convert files into DataTables, ensuring the inclusion of headers as column names. This method supports files with extensions like .xlsx, .xls, .xlsm, .xltx, .csv, and .tsv, and throws exceptions for unsupported file formats. This tutorial serves as a valuable resource for developers looking to manage Excel data within C# applications, enhancing their ability to work with SQL datasets efficiently. ### Excel to SQL with DataTable in C# (Code Example) | IronXL https://ironsoftware.com/excel/csharp/examples/excel-sql-datatable/ The article titled "Excel to SQL with DataTable in C# (Code Example) | IronXL" provides a detailed guide on converting Excel files to SQL using C#. It emphasizes the efficiency of converting various Excel formats, such as XLSX, XLS, XLSM, XLTX, CSV, and TSV, into a System.Data.DataTable. This conversion facilitates full interoperability with System.Data.SQL and can also be used to populate a DataGrid. To achieve this, the IronXL library is recommended, which allows users to convert Excel sheets to a DataTable with ease. The process involves loading the Excel file, selecting the default worksheet, and transforming the data into a DataTable using the ToDataTable method, where the first row can be set as column names. The article provides C# and VB code examples demonstrating how to implement this conversion. By utilizing the IronXL library, the conversion process is efficient, saving time and effort for developers working with data migration from Excel to SQL databases. Additional resources such as related documentation and tutorials are also mentioned, offering further assistance and learning opportunities. ### C# Excel Styling Guide with IronXL | IronXL https://ironsoftware.com/excel/csharp/examples/excel-style-cells-borders-fonts/ The article titled "C# Excel Styling Guide with IronXL" from IronXL provides a comprehensive guide for C# developers on customizing Excel worksheets using the IronXL library. It explains how to style Excel cells and ranges by manipulating fonts, text alignment, borders, colors, backgrounds, and patterns, similar to the functionalities available in Microsoft Excel. The article includes a detailed code example showing how to apply a variety of styles using IronXL. Developers can configure individual cell and range borders with options like dotted, dashed, and double styles using the BorderType enum. Additionally, the guide covers properties like ShrinkToFit and WrapText to control cell size organization. To begin styling, developers need to install the IronXL package via NuGet Package Manager, load an existing Excel file, select a worksheet, and apply style changes such as font size, boldness, italics, underline, and border properties. The code example demonstrates how to set a thick, red bottom border, a dashed top border, and a double right border. After applying these styles to a specific cell, the modified Excel file can be saved. This guide serves as a practical resource for enhancing the visual presentation of Excel files in C# projects. ### Update Excel Database Records in C#, Code Examples | IronXL https://ironsoftware.com/excel/csharp/examples/excel-update-database-records/ The article titled "Update Excel Database Records in C#, Code Examples | IronXL" provides a comprehensive guide on how to efficiently update SQL database records using Excel data with IronXL in C#. The key feature discussed is the ToDataSet method, which seamlessly integrates Excel workbooks into ADO.NET as DataSets. This process facilitates the direct synchronization and updating of database records, eliminating manual data entry and complex transformations. Particularly beneficial for applications that require frequent updates from external Excel files, such as in customer data or inventory systems, this feature ensures data consistency and reduces processing time. IronXL supports various Excel formats, enhancing its versatility. The article outlines a five-step process: loading an Excel file into a WorkBook object, converting it to a DataSet, defining an SQL query, initializing a SqlDataAdapter with the query and connection, and using SqlCommandBuilder to generate SQL commands for updates. Finally, adapter.Update(dataSet) synchronizes changes from the DataSet to the database. This streamlined approach is ideal for enterprise-grade applications, ensuring that databases reflect the latest Excel data efficiently. Additional resources such as a how-to guide, sample code, and documentation are provided for further assistance. ### Code Example: Excel Spreadsheet Export | IronXL https://ironsoftware.com/excel/csharp/examples/export-excel-spreadsheet/ The article titled "Code Example: Excel Spreadsheet Export | IronXL" on the IronXL website provides a comprehensive overview of how to export Excel data to various formats using the IronXL library in .NET applications. IronXL simplifies the process of saving Excel files in different formats, which facilitates data sharing and integration without the need for complex conversions. The library supports multiple formats, enabling developers to produce well-structured and styled files compatible with numerous applications using minimal code. Notably, exporting data to HTML or JSON formats aids in integrating Excel data into web applications and APIs, thereby enhancing productivity and streamlining workflows. The article outlines a five-step process to export Excel spreadsheets: initializing a new workbook, creating a worksheet, populating a cell with data, styling the cell, and saving the workbook in .xlsx format. Additionally, it covers exporting the workbook to an HTML file for web integration. These steps demonstrate IronXL's capacity for dynamic data manipulation and presentation, highlighting its powerful styling capabilities and compatibility with various applications. The article also provides links to additional resources, including sample code and related documentation, supporting developers in efficiently using IronXL for their Excel operations. ### Freeze Panes in Excel in C#, Code Examples | IronXL https://ironsoftware.com/excel/csharp/examples/freeze-panes-in-excel/ The article "Freeze Panes in Excel in C#, Code Examples | IronXL" provides a comprehensive guide on how to implement freeze panes in Excel using C#. This feature is particularly useful for keeping rows and columns visible while scrolling through large datasets, thus enhancing data navigation. The method `CreateFreezePane` is highlighted, which allows developers to lock specific rows and columns in place. Two overloads of this method are explained: the first locks a specified column and row, while the second allows for additional scrolling configuration within the worksheet. For example, `workSheet.CreateFreezePane(1, 4)` freezes the first column and the first four rows, ensuring they remain visible during scrolling. Alternatively, `workSheet.CreateFreezePane(5, 2, 6, 7)` freezes columns A-E and rows 1-2, setting a scrollable area starting from column F and row 8. The article emphasizes the utility of freeze panes in managing extensive Excel data and provides code examples for easy implementation. Developers are guided to download a C# library to facilitate this process, either by loading an existing spreadsheet or creating a new one, and then exporting the edited file. Links to related documentation and tutorials are also provided for further assistance. ### Excel C# Group & Ungroup Row & Column (No Interop) | IronXL https://ironsoftware.com/excel/csharp/examples/group-and-ungroup-rows-and-columns/ The article from IronXL explains how to group and ungroup rows and columns in Excel worksheets using the IronXL C# library, offering an intuitive alternative to Office Interop. The GroupRows method allows users to group rows by index positions, and multiple groupings can be applied. To ungroup rows, the UngroupRows method is used, which acts like a cutting tool to split groups, yet maintains them as a single logical entity. For instance, ungrouping rows 2-4 within a group spanning 0-9 results in two groups: 0-1 and 5-9. Similarly, columns can be grouped using the GroupColumns method, either by index or by specifying column names. The UngroupColumns method works similarly to rows, splitting groups into two while keeping them logically connected. For example, ungrouping columns C-D within a group A-F results in groups A-B and E-F. The guide provides code examples for both C# and VB.NET, illustrating how to create a workbook, access a worksheet, apply grouping and ungrouping, and save changes. The article emphasizes that indexing is zero-based and that grouping is only applicable to cells containing values. Additional resources and documentation links are also provided for further assistance. ### C# Excel Insert New Rows & Columns (No Interop) | IronXL https://ironsoftware.com/excel/csharp/examples/insert-new-rows-and-columns/ The article titled "C# Excel Insert New Rows & Columns (No Interop) | IronXL" provides a guide on using the IronXL library to insert new rows and columns in Excel worksheets using C# without relying on Office Interop. It explains the methods available in the IronXL library, such as InsertRow and InsertRows, which allow users to add single or multiple rows before a specified index position. An example is provided to demonstrate inserting a single row before the third row and multiple rows before the fifth row in an Excel sheet. Similarly, it details the InsertColumn and InsertColumns methods for adding columns, showing how to insert a single column before the second column and multiple columns before the fourth column. The examples highlight loading an existing Excel file, making modifications by inserting rows or columns, and saving the changes. The article emphasizes the use of zero-based indexing for specifying positions. Additionally, it provides links to related documentation, tutorials, and guides for further reference, along with instructions on how to download the IronXL DLL and report issues. The guide is aimed at simplifying Excel manipulation tasks in C# applications by harnessing IronXL's capabilities. ### Load Excel From SQL Database in C#, Code Examples | IronXL https://ironsoftware.com/excel/csharp/examples/load-excel-from-sql-database/ The article from IronXL provides a comprehensive guide for developers on how to load Excel data directly from SQL databases using C#. The process, facilitated by IronXL, simplifies the conversion of SQL query results into Excel workbooks, making it easier for developers to incorporate data export functions into their .NET applications. By loading a DataSet into a WorkBook, the need for manual data formatting is eliminated, allowing developers to focus on generating user-friendly reports. This feature supports XLS and XLSX file formats, ensuring compatibility with most spreadsheet applications and making it particularly useful for automating report generation and data sharing tasks. The article outlines a five-step process for exporting SQL data to Excel. It involves initializing an SqlDataAdapter with a SQL query and connection string, populating a DataSet with the fetched data, and using the WorkBook.Load method to convert the DataSet into an Excel workbook efficiently. Finally, the workbook is saved as an .xlsx file using the SaveAs method. This approach not only reduces the amount of code required but also ensures compatibility with various spreadsheet applications while maintaining robust performance, making it an efficient solution for exporting database content. ### Protect Excel Files in C# .NET | IronXL https://ironsoftware.com/excel/csharp/examples/protect-excel-file/ The article "Protect Excel Files in C# .NET | IronXL" provides a comprehensive guide on securing Excel files using IronXL in C#. It highlights the importance of the Encrypt method, enabling developers to apply password protection to entire Excel workbooks or individual worksheets. This feature is vital for protecting sensitive data and ensuring that only authorized users can access or modify Excel files. IronXL also supports sheet-level protection, allowing users to restrict editing rights while enabling data interaction, a critical tool in collaborative environments. The flexibility to remove protection with or without a password is also discussed, catering to both secure environments and scenarios requiring temporary access restoration. The article outlines a step-by-step process for encrypting a workbook, which includes loading a workbook with WorkBook.Load(), applying password protection using Encrypt(), accessing the default worksheet with DefaultWorkSheet, and protecting it with ProtectSheet(). The final step involves saving the changes with Save(), ensuring that the protection settings are preserved. This functionality is essential for maintaining Excel file security in automated data processing workflows. The guide includes examples, sample code, and related resources for further reference. ### Reading Excel in C#, Code Examples | IronXL https://ironsoftware.com/excel/csharp/examples/read-excel/ The article "Reading Excel in C#, Code Examples | IronXL" offers a comprehensive guide on using IronXL to read and manipulate Excel files in C#. It highlights the ease of loading existing Excel files without Interop, supporting various formats like XLSX, XLS, and CSV. By loading a workbook, users can access worksheets and data, allowing for operations such as extracting values, looping through cell ranges, and performing calculations like sums. The process begins with the WorkBook.Load("sample.xlsx") method to open an Excel file, followed by accessing the first worksheet using WorkSheets[0]. A range of cells, such as A2 to A10, can be defined for operations, with IronXL facilitating interaction with multiple cells simultaneously. The .Sum() method demonstrates how to calculate the sum of numeric values in a range, showcasing IronXL's capability for quick calculations without manual iteration. The article concludes with a practical example: loading a workbook, accessing a worksheet, defining a cell range, calculating the sum, and displaying the result using Console.WriteLine(). This approach streamlines data analysis, report generation, and automation tasks, integrating seamlessly into larger workflows. ### Code Examples: Print Titles in Excel | IronXL https://ironsoftware.com/excel/csharp/examples/repeating-rows-and-columns-in-excel/ The article from IronXL provides a guide on how to use C# to set repeating rows and columns in Excel spreadsheets, a feature that significantly enhances readability when printing multi-page spreadsheets. The technique, known as Repeating Rows and Columns or Header Rows and Columns, allows specific rows or columns to appear on every printed page. IronXL simplifies this task with the `SetRepeatingRows(startRow, endRow)` and `SetRepeatingColumns(startColumn, endColumn)` methods. The methods use zero-based indexing, ensuring that, for instance, `SetRepeatingRows(3, 4)` will repeat rows 4 and 5, and `SetRepeatingColumns(0, 2)` will repeat columns A to C. The article illustrates that the application of these methods can vary based on the printed page's position relative to the first page. Pages extending along the right of the first page will only apply the repeating column rule, while those extending below will apply the repeating row rule. Pages positioned internally will apply both rules. The article supports its explanations with figures and provides additional resources, such as related documentation, tutorials, and a link to download the IronXL DLL for further exploration and implementation. ### Select Excel Range in C#, Code Examples | IronXL https://ironsoftware.com/excel/csharp/examples/select-excel-range/ The article "Select Excel Range in C#, Code Examples | IronXL" provides a comprehensive tutorial on how to programmatically select Excel ranges using the IronXL library in C#. It explains the process of selecting specific ranges, rows, and columns within an Excel worksheet. The tutorial begins with the installation of the IronXL library from NuGet, followed by loading an existing or creating a new Excel workbook. The article details the selection of a range, such as from cells A2 to A8, using a simple command syntax: `var range = sheet["A2:A8"]`. It also covers selecting entire rows and columns, using methods like `GetRow(0)` for row 1 and `GetColumn(0)` for column A, utilizing zero-based indexing. Additionally, the guide highlights how selected ranges can undergo further data manipulations, such as sorting or performing calculations like Sum, Max, Min, and Avg. The tutorial is supplemented with code examples and instructions for both C# and VB, ensuring a wide utility for different programming preferences. Overall, the article serves as a practical resource for developers looking to automate Excel operations within their applications. ### Code Example: Sorting Data in Excel using C# | IronXL https://ironsoftware.com/excel/csharp/examples/sort-excel-range-csharp/ The article titled "Code Example: Sorting Data in Excel using C# | IronXL" delves into the process of organizing Excel data by sorting specific ranges using IronXL within .NET applications, enhancing readability. It introduces methods like SortAscending, SortDescending, and SortByColumn for efficiently sorting Excel columns, rows, and ranges using C# and VB.NET. The article provides a C# code example where an Excel file is loaded using WorkBook.Load("example.xlsx"), and the first worksheet is selected. It demonstrates sorting the entire sheet in ascending order using sheet.SortAscending(sheet["A"]), sorting a specific range in descending order with sheet.SortDescending(sheet["A2:A10"]), and sorting by a specific column with the SortByColumn method, specifying the sort order. The sorted data is then saved to a new file, "sorted_example.xlsx". The article also briefly mentions VB.NET syntax, emphasizing maintaining clarity and functionality. Additional resources include related documentation, tutorials, and a GitHub link for further guidance. This comprehensive approach aids developers in effectively managing Excel data sorting tasks within their applications. ## Troubleshooting ### Apply a License Key in IronXL: Step-by-Step | IronXL https://ironsoftware.com/excel/csharp/troubleshooting/apply-a-license-key-in-ironxl/ The article titled "Apply a License Key in IronXL: Step-by-Step" from IronXL provides a detailed guide on how to apply a license key to ensure the Excel software is properly licensed. The license key is a crucial component—it is a long string that includes an expiration date, signifying the end of support. Notably, the license is perpetual, allowing users to continue using versions released prior to the expiration date. The article emphasizes the importance of correctly copying the key without spaces. It provides specific instructions for applying the license key in both Python and C#. For Python, users should replace the placeholder `"IRONXL-MYLICENSE-KEY-RENEW.SUPPORT.01.JAN.2050"` with their actual key using the code snippet provided. Similarly, in C#, the key should be set before any calls to the IronXL library using a given code snippet. The article also mentions additional configuration options available via `web.config`, `app.config`, and `appsettings.json`, directing readers to another article for more detailed information on using IronXL license keys. This comprehensive guide ensures users can smoothly apply their license keys and maintain proper software functionality. ### IronXL Data-Loading Method Performance https://ironsoftware.com/excel/csharp/troubleshooting/data-loading-performance/ The article "IronXL Data-Loading Method Performance" addresses the efficiency of different data-loading techniques in IronXL, particularly when dealing with large datasets. It highlights that loading data cell by cell can significantly hinder performance, leading to slow processing times. To optimize performance, the article suggests using alternative methods such as DataTable or CSV loading, which markedly reduce the time required to handle the same file size. These methods streamline the data-loading process by allowing bulk data operations rather than processing individual cells, thus improving overall speed and efficiency. The article emphasizes the importance of selecting the appropriate loading method to enhance performance, particularly in scenarios involving large volumes of data. By adopting these optimized strategies, users can achieve faster data processing and better resource management, ultimately leading to improved productivity and reduced computational costs. The article serves as a practical guide for developers and IT professionals seeking to enhance their data handling capabilities within IronXL, providing insights into best practices and effective techniques for managing extensive datasets. ### Excel Limitation: Data Validation for String Lists | IronXL https://ironsoftware.com/excel/csharp/troubleshooting/excel-limitation-data-validation-for-string-lists/ The article titled "Excel Limitation: Data Validation for String Lists" on the IronXL website explores the constraints faced when using Excel for data validation of string lists. It highlights the challenges users encounter due to Excel's inherent limitations, particularly when managing extensive or complex string data within spreadsheets. The article delves into the technical aspects of why these limitations occur, providing a clear understanding of Excel's functionality concerning data validation processes. Furthermore, it offers practical solutions and workarounds using IronXL, a robust Excel library for C# developers, to circumvent these limitations. By leveraging IronXL, users can achieve more efficient data validation, allowing for more dynamic and scalable spreadsheet operations without being hindered by Excel's native constraints. The piece is aimed at developers and users who require advanced data handling capabilities and emphasizes the advantages of integrating IronXL to enhance Excel's data validation functionalities. Overall, this article serves as a comprehensive guide for those looking to optimize their data validation processes in Excel, ensuring they can handle string lists more effectively and without the usual restrictions. ### IronXL File Size Limits: Troubleshooting and Fixes https://ironsoftware.com/excel/csharp/troubleshooting/file-size-limits/ The article on IronXL's website addresses common issues and solutions related to file size limitations when working with Excel files in IronXL. It clarifies that IronXL itself does not impose any inherent file size or row/column limitations. However, users may encounter an error message related to a limit of 65,535 rows when dealing with Excel files in the 1997-2003 XLS format. This format restricts data to 256 columns (IV) and 65,536 rows, leading to potential data loss or #REF! errors in formula references if data exceeds these limits. To overcome this, the article suggests utilizing the newer XLS and XLSX formats from 2007-2010, which offer significantly higher capacity for rows and columns, allowing for more extensive data handling without the constraints of the older formats. The article also provides a link to Microsoft's Excel specifications and limits for further reference, helping users manage and optimize large Excel files effectively using IronXL. ### IronXL Security CVE: Protect Your Applications https://ironsoftware.com/excel/csharp/troubleshooting/ironxl-security-cve/ The article "IronXL Security CVE: Protect Your Applications" focuses on the security measures and practices implemented by Iron Software to safeguard its IronXL library against vulnerabilities. Notably, all Iron Software products, including IronXL, are DigiCert certified, ensuring high standards of security. Unlike many Excel libraries, IronXL does not utilize Microsoft.Office.Interop, nor does it expose any COM or COM+ interfaces within its IronXL.dll. The library is entirely written in C#, which inherently guards against numerous common attack vectors. To minimize potential vulnerabilities, IronXL restricts the number of entry points to its API. Additionally, it employs strong naming conventions and advanced tamper protection methods. A rigorous code review process is in place, with every line of code undergoing at least two levels of scrutiny by senior engineers to identify and mitigate security threats. Importantly, IronXL avoids any known access to unmanaged code, distinguishing it from other Excel libraries that rely on Office Interop, thus reducing risk exposure. This comprehensive approach underscores IronXL's commitment to maintaining a secure environment for applications utilizing its services. For developers and businesses relying on IronXL, staying informed about updates and CVE disclosures is crucial for maintaining robust security. ### IronXL License Key Troubleshooting | IronXL https://ironsoftware.com/excel/csharp/troubleshooting/license-key-web.config/ The IronXL License Key Troubleshooting guide addresses a licensing issue affecting ASP.NET projects using IronXL versions 2023.4.13 to 2024.3.20 on the .NET Framework version 4.6.2 or higher. In these versions, the license key stored in the `Web.config` file is not automatically recognized by the product, leading to an unhandled IronSoftware.Exceptions.LicensingException error. This issue has been resolved in IronXL version 2024.3.20. For older versions, a workaround is provided. Users should manually retrieve the license key from the `Web.config` using the `ConfigurationManager` and apply it to the `License.LicenseKey` property in their code. The article provides a detailed example demonstrating how to store the license key within the `Web.config` file and use C# code to access and set the license key using `ConfigurationManager.AppSettings`. This approach ensures that the IronXL components function correctly by appropriately recognizing the license key. ## Product Updates ### IronXL Product Updates | IronXL https://ironsoftware.com/excel/csharp/product-updates/changelog/ The IronXL changelog outlines the recent updates and enhancements made to the IronXL for .NET Excel Library. IronXL, designed for managing Excel files in C#, has been updated monthly, incorporating user feedback and continually improving its features. The June 2025 release, version 2025.6.2, included updates to the Iron Software.System.Drawing and fixed issues related to the LastFilledCell property and CreateNamedTable feature. Previous updates in 2025 focused on bug fixes and performance enhancements, such as correcting row length issues and improving handling of large Excel files. Notably, IronXL is working on expanding support beyond C# to other programming languages and enhancing functionality across the Microsoft Office Suite, including Word and PowerPoint. The changelog reflects a commitment to addressing bugs promptly and enhancing the library's performance, making IronXL a preferred choice for developers. The updates also include improvements in handling various Excel file formats, performance enhancements, and fixing issues related to data validation and Excel file handling. Overall, IronXL continues to offer robust solutions for Excel file manipulation and is planning further expansions in its capabilities. ### Milestone: Enhancing Document Processing Efficiency | IronXL https://ironsoftware.com/excel/csharp/product-updates/milestones-enhancing/ The latest release of IronXL by Iron Software marks a significant milestone in Excel file processing, enhancing both speed and memory efficiency to empower developers. This update introduces a centralized formula evaluation engine, boosting processing speed by up to 40 times. For example, processing a 26,000-row Excel file now takes only 1.3 seconds compared to the previous 52.4 seconds. This advancement allows developers to handle large datasets with ease, significantly improving workflow efficiency. Additionally, memory usage has been drastically reduced; memory consumption now falls under 1 GB, down from 19.5 GB. This reduction makes IronXL compatible with lower-spec machines and cost-effective cloud servers, ensuring smooth performance even on devices with limited resources, such as those with 4-8 GB of RAM. The update also emphasizes universal accessibility, offering robust performance on minimal hardware. Key comparisons between versions 2024.11.x and 2024.12.x highlight improvements in mean processing time and allocated memory, demonstrating the transformative potential of the update. Iron Software invites developers to experience these advancements firsthand with a free trial, showcasing the powerful capabilities of IronXL in enhancing Excel automation within .NET environments. ### Milestone: Performance Improvements | IronXL https://ironsoftware.com/excel/csharp/product-updates/milestones-performance/ IronXL has achieved significant performance and memory improvements, positioning itself as a leading .NET Excel document library. As of the September 2023 release, IronXL has over 500,000 NuGet installs. The latest version, IronXL 2023.9, has demonstrated marked enhancements in operational speed and memory efficiency compared to its previous iterations from August 2023 and September 2022. These improvements make it suitable for use even on lower specification computers. Performance metrics show IronXL outperforming its previous versions across all measured parameters. In terms of memory allocation, the latest version has made substantial strides, reducing memory usage across various operations. For instance, accessing a cell range's properties now uses 14% less memory, random cell operations are 8% more efficient, and removing large rows now requires 69% less memory. Larger operations, such as data cell operations and saving large files, have also seen memory usage reductions of 2% and 18%, respectively. These advancements not only enhance operational efficiency but also reduce production costs, ensuring that IronXL remains a competitive choice in the market for Excel document manipulation. ### Milestones | IronXL https://ironsoftware.com/excel/csharp/product-updates/milestones/ IronXL, a .NET Excel document library, has witnessed considerable growth since its inception in 2019, achieving over 500,000 NuGet installs by its latest release in September 2023. The development of IronXL is heavily influenced by community-driven feedback, which plays a pivotal role in shaping its roadmap. This collaborative approach has been instrumental in driving significant product enhancements, particularly those introduced in 2023. One of the highlighted milestones is the substantial improvement in performance and memory efficiency, shipped in September 2023, which has further solidified IronXL's position as a leading solution in its category. These updates have not only accelerated operational speeds but also optimized memory allocation, reflecting the company's commitment to continuous improvement and user satisfaction. This summary showcases key achievements and updates, which represent only a portion of the advancements made. For a detailed chronology of changes, users are encouraged to consult the comprehensive change log available on the IronXL milestones page. These strategic enhancements underscore IronXL’s dedication to delivering a robust and efficient library, aligning closely with user needs and industry demands.