ExcelReportGenerator 2.2.0

dotnet add package ExcelReportGenerator --version 2.2.0
NuGet\Install-Package ExcelReportGenerator -Version 2.2.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="ExcelReportGenerator" Version="2.2.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add ExcelReportGenerator --version 2.2.0
#r "nuget: ExcelReportGenerator, 2.2.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install ExcelReportGenerator as a Cake Addin
#addin nuget:?package=ExcelReportGenerator&version=2.2.0

// Install ExcelReportGenerator as a Cake Tool
#tool nuget:?package=ExcelReportGenerator&version=2.2.0

ExcelReportGenerator

This library allows you to render data to Microsoft Excel by marking Excel sheets using panels and templates. It makes it easy to connect to various data sources like IDataReader, DataSet, DataTable, IEnumerable<T> and others and to render data from them to Excel. You can also apply aggregation, various types of grouping, formatting and so on to the data. You can include the library to your project via NuGet package.

How to use?

First of all you have to create a report template in Microsoft Excel. You need to mark up an excel sheet (or multiple sheets) using panels and templates which will be handled by the library. You can add any other formatting you want. All styles will be preserved after rendering. Your template can look like this:

Template

template

Next you need to create a report class that will supply data for this template

Code

    public class ReportSample
    {
        private readonly DataProvider _dataProvider = new DataProvider();

        public string ReportName => "Grouping with Panel Hierarchy";

        public IEnumerable<string> GetDepartments()
        {
            return GetAllEmployees().Select(e => e.DepartmentName).Distinct();
        }

        public IEnumerable<DataProvider.Result> GetDepartmentEmployees(string department)
        {
            return GetAllEmployees().Where(e => e.DepartmentName == department).ToArray();
        }

        public IEnumerable<DataProvider.Result> GetAllEmployees()
        {
            return _dataProvider.GetEmployeesAsIEnumerable().ToArray();
        }

        public string ConvertGender(string gender)
        {
            return gender == "M" ? "Male" : "Female";
        }
    }

Result

result

The detailed documentation is inside the Docs folder. For more information see also ExcelReportGenerator.Samples.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
2.2.0 209 2/16/2024
2.1.0 938 4/15/2023
2.0.0 247 2/23/2023
1.2.2 2,450 4/18/2020
1.2.1 11,561 12/16/2018
1.2.0 1,002 11/20/2018
1.1.3 1,137 6/27/2018
1.1.2 1,057 6/3/2018
1.1.1 1,203 4/24/2018
1.1.0 1,049 4/22/2018
1.0.0 955 4/12/2018