Skip to main content Skip to footer
JavaScript Spreadsheet Reporting Tool | XLSX Templates and Reports | Developer Solutions

ReportSheet: Build Excel-like Spreadsheet Reports in JavaScript

ReportSheet is a powerful reporting optional SpreadJS add-on that allows your users to easily design and run reports directly in the spreadsheet.

Download SpreadJS Free Trial (V 18.2.3)

Explore Powerful JavaScript Spreadsheet Reporting Capabilities

Excel is one of the most popular tools for creating reports. ReportSheet is a JavaScript spreadsheet reporting tool that allows spreadsheet users to design and create powerful Excel-like reports that can also include data entry, pagination, data filtering, sorting, conditional formatting and many other popular reporting features. 

Ultimate JavaScript Spreadsheet Reporting Solution

Effortless Excel Report Creation, Viewing, and Editing in JavaScript Web Apps

Effortless Excel-Like Report Creation

Create or allow the creation of JavaScript spreadsheet reports that feel instantly familiar to users with an Excel-like spreadsheet experience. With built-in support for worksheets, tables, charts, and formulas, your users can generate interactive, data-rich reports without relying on Microsoft Excel or other reporting software. Seamless XLSX report import and export ensures smooth integration with existing workflows, making it easy to build, collaborate, and customize spreadsheet reports and templates directly inside JS spreadsheet web applications.

Consistent Layouts & Professional Styling

Deliver polished, professional reports every time with built-in layout and styling options. Apply consistent formatting across tables, charts, and worksheets to match your brand or industry standards. Features like cell styles, themes, borders, and conditional formatting ensure the reports not only communicate data clearly but look clean and reliable—helping users trust and act on the insights presented.

Enable the Creation of Consistent Professional Reports using a JavaScript Spreadsheet Control
Create Cross Reports for Advanced Spreadsheet Data Analysis in JavaScript Web Applications

Cross Spreadsheet Reports for Advanced Analysis

Build data-rich JS spreadsheet Cross Reports to analyze data across multiple categories and dimensions. By combining cell types like Group and Summary, users can define templates that automatically organize sales, returns, or other key metrics into clear, multi-dimensional tables. 

Cross reports with cross-tabulation (crosstab) and matrix report layouts make it easy to track performance, identify consumer trends, and measure growth or decline in revenue, all within a familiar spreadsheet environment. Users can also implement data entry in cross reports allowing for records to be directly updated in the web application to keep reports accurate and actionable in real time.

Spreadsheet Report Designer

Empower users to design and customize reports with an intuitive, Excel-like designer. Without writing a single line of code, users can drag, drop, and configure data fields, tables, charts, and formulas to create reports tailored to their needs. Developers can easily embed an optional designer ribbon toolbar into the JS spreadsheet applications, giving end users full control over layout, styling, and formatting while maintaining the flexibility and performance of a powerful spreadsheet engine.

JavaScript Spreadsheet Report Designer | No Code Developer Solution

Build Your Own JavaScript Spreadsheet Report

Quick Start Guide
1. Set up the JS spreadsheet. Install via NPM and include scripts, styles, and a container:

Install NPM Packages: @mescius/spread-sheets, @mescius/spread-sheets-reportsheet-addon

<head>
<script src="gc.spread.sheets.all.xx.x.x.min.js">
<script src="gc.spread.report.reportsheet.xx.x.x.min.js">
<link rel="stylesheet" href="gc.spread.sheets.xx.x.x.css"type="text/css"/>
</head>
  ...
  <div id="ss"></div>
2. Initialize the JavaScript spreadsheet Workbook & add a Data Table.
const spread = new GC.Spread.Sheets.Workbook('ss');
const ordersTable = spread.dataManager().addTable('Orders', {
  remote: { read: { url: 'https://demodata.mescius.io/northwind/api/v1/orders' } }
});
3. Create a TemplateSheet.

Create TemplateSheet's either programmatically with TemplateSheet class or using the code-free Spreadsheet Designer.

4. Add a report worksheet & get the template sheet.
ordersTable.fetch().then(() => {
  const reportSheet = spread.addSheetTab(0, 'report1', GC.Spread.Sheets.SheetType.reportSheet);
  const templateSheet = reportSheet.getTemplate();
});
5. Set the data to the template sheet.
['orderId','customerId','orderDate','freight','shipName','shipCity','shipCountry']
  .forEach((c, i) => {
    templateSheet.setValue(0, i, c[0].toUpperCase() + c.substring(1));
    templateSheet.setTemplateCell(1, i, { type: 'List', binding: `Orders[${c}]` });
});

Learn more with our interactive online demos or documentation.

Easy Licensing & Distribution

After Purchasing Users Generate ReportSheet Enabled SpreadJS Distribution Key/s for Application/s Through Their MESCIUS Account.

Licensing FAQs

The ReportSheet add-on is enabled through a SpreadJS distribution key. SpreadJS is licensed per developer and deployed hostname, with deployment licenses varying by commercial or non-commercial use.

Learn More About Optional Add-On Licensing.

Request a ReportSheet Enabled Trial Key

Our sales team can provide a 30-day ReportSheet Add-on enabled trial key upon request, allowing you to deploy SpreadJS and the optional ReportSheet add-on during your trial period.

Contact Our Sales Team

Have Questions? We're Here to Help

Email us.sales@mescius.com to schedule a call with our product specialists or request a personalized demo through support to discuss your project needs.

Contact Support

Award-Winning Products and First-Class Support

Five Star Rating

"I have been using a various form of Spread back to the COM days. Spread is the most reliable spreadsheet that retrieves and stores data, whether interacting with a database or simply an Excel file. Try it out, and you will not go back to any other control"

TRUSTED CUSTOMER

Five Star Rating

"Great support through evaluation process, Spread is my favorite development add-in, adds great, high value capabilities to applications!"

TRUSTED CUSTOMER

Five Star Rating

"Excellent Products. I have been using their products for around 15 years. Always there to help."

TRUSTED CUSTOMER

ComponentSource Award 2024 Top 50 Product Top 50 Product (#31) - Component Source 2025

Trusted by the World's Leading Companies

"Thanks for providing the best [JavaScript] spreadsheet widget in the world, we're very happy customers. Your product has saved us a TON of time relative to other solutions we used in the past."

Jan Domanski, Labstep

"We have been using Spread in our desk and web products (PerpetualBudget) for over a decade. Not only are the Spread grids great controls but the support at GrapeCity [now known as MESCIUS] is the best. When you need them, they're there!"

Jim Spicer, Spicer-Baer Associates

"I haven't come across such a feature-rich solid Spread before. Thanks for giving such a nice component."

Adavesh Managaon, MVP, Visual C#

"Spread benefits my company because our clients can now see the immediate benefit the websites we create for them provide."

Michael Stark, Owner, StarkNetwork.com