Web Excel Editor
SpreadJS Designer Component
List of Services
Do you want to implement Google Sheets, an online MS Excel-like UI, menu structure, and Excel functionality on your web pages?
Try the SpreadJS designer component, a complete front-end Excel editor.
It provides components for Excel functions, starting from the screen structure, so you can freely customize and expand it as you like.
* A SpreadJS Developer license is required to use the Designer Component.
See the Pen SpreadJS 디자이너 컴포넌트 V15.0.6_홈페이지 게시 전용 by GrapeCity Korea ( @GrapeCity-Korea ) on CodePen.
The screen above is implemented as an actual SpreadJS designer component.

Ask Anything!
Share your vague concerns and questions about Spread.NET with MESCIUS's expert team. We empathize with your concerns and are here to help.
How to apply designer components
Learn how to integrate designer components with your new spreadsheet.
Step 1. Reference SpreadJS CSS and JS files to your project.
<!--CSS file-->
<link href="css/gc.spread.sheets.excel2013white.0.0.0css" rel="stylesheet" type="text/css" />
<!--script file-->
<script type="text/javascript" src="scripts/gc.spread.sheets.all.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.shapes.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.charts.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.datacharts.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.slicers.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.print.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.barcode.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.pdf.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.pivot.pivottables.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.tablesheet.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.ganttsheet.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.formulapanel.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.report.reportsheet.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.io.0.0.0.min.js"></script>
<!--Culture settings-->
<script type="text/javascript" src="scripts/resources/ko/gc.spread.sheets.resources.ko.0.0.0.min.js"></script>
Step 2. Reference the CSS and JS files of the designer component in your project.
<!--CSS file-->
<link href="css/gc.spread.sheets.designer.0.0.0.min.css" rel="stylesheet" type="text/css" />
<!--script file-->
<script type="text/javascript" src="scripts/gc.spread.sheets.designer.resource.ko.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/gc.spread.sheets.designer.all.0.0.0.min.js"></script>
Step 3: Include the DOM element as a container in the page body.
<div id="gc-designer-container" role="application"></div>
Step 4: Initialize the designer component. Before initializing, also set the license key for the designer component and SpreadJS.
// Set license key
GC.Spread.Sheets.LicenseKey = 'xxx';
GC.Spread.Sheets.Designer.LicenseKey = 'xxxx';
// Designer reset
var designer = new GC.Spread.Sheets.Designer.Designer(
document.getElementById("gc-designer-container")
);
✅ The complete HTML code is as follows:
Include the content within the
<style>
tags in the code.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="spreadjs culture" content="ko-kr" />
<title>spreadsheet designer</title>
<!-- CSS file -->
<link href="css/gc.spread.sheets.excel2013white.0.0.0.css" rel="stylesheet" type="text/css" />
<link href="css/gc.spread.sheets.designer.0.0.0.min.css" rel="stylesheet" type="text/css" />
</head>
<style>
.designer {
height: calc(100% - 15px);
}
.ribbon-button-welcome {
background-image: url('./welcome.png');
background-size: 35px 35px;
}
html, body {
overflow: hidden;
padding: 0;
margin: 0;
height: 100%;
}
#gc-designer-container {
height: 100%;
}
</style>
<body unselectable="on">
<!-- DOM element -->
<div id="gc-designer-container" role="application"></div>
<!-- script file -->
<script type="text/javascript" src="scripts/gc.spread.sheets.all.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.shapes.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.charts.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.datacharts.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.slicers.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.print.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.barcode.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.pdf.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.pivot.pivottables.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.tablesheet.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.ganttsheet.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.formulapanel.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.report.reportsheet.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/plugins/gc.spread.sheets.io.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/resources/ko/gc.spread.sheets.resources.ko.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/gc.spread.sheets.designer.resource.ko.0.0.0.min.js"></script>
<script type="text/javascript" src="scripts/gc.spread.sheets.designer.all.0.0.0.min.js"></script>
<script type="text/javascript">
window.onload = function () {
// License key setting
GC.Spread.Sheets.LicenseKey = 'xxx';
GC.Spread.Sheets.Designer.LicenseKey = 'xxxx';
var designer = new GC.Spread.Sheets.Designer.Designer(
document.getElementById("gc-designer-container")
);
}
</script>
</body>
</html>
Step 5: You can check the designer component in the browser.


Ask Anything!
Share your vague concerns and questions about Spread.NET with MESCIUS's expert team. We empathize with your concerns and are here to help.
Designer Component Screen Configuration


Customizing Designer Components
Please refer to the contents below to customize the designer components as you wish.
List of Services
-
Add Ribbon Menu TabList Item 1You can add new ribbon menu tabs for frequently used commands.
-
Add Ribbon Menu ButtonList Item 2You can add new buttons to the ribbon menu tabs.
-
Customizing Context Menu ItemsList Item 3You can add new context menu items.
-
Add Custom DialogList Item 4You can enable or disable buttons on specific tabs.
-
Enable/Disable Ribbon Menu ButtonsYou can enable or disable buttons on specific tabs.
-
Binding File Load EventsYou can trigger an event when loading a file.
-
Add Status Bar ItemYou can add whatever you want to the status bar.
-
Add Custom ComponentYou can add any components you want.
-
Designer Component Localization Resources CustomizationYou can customize the designer component localization resources using the getResources and setResources methods.