Jexcel Pro v7: The JavaScript spreadsheet

jExcel, a lightweight Vanilla JavaScript plugin, can help you create exceptional web-based interactive tables and spreadsheets. Compatible with most widely-used spreadsheet software. It offers users an unrivalled spreadsheet-like user experience. It also works well with prominent modern frameworks and flexibly utilizes a large collection of events, extensions and configurations to meet different application requirements. Impress your clients with a better user experience and a great dynamic interactive data management tool.

Impress your clients with a better user experience and a great dynamic interactive data management tool.

  • Make rich and user-friendly web interfaces and applications
  • Handle complicated data inputs with ease and convenience
  • Common shortcuts to move data from/to any other spreadsheet software
  • Improve software user experience
  • Create rich CRUDS and beautiful UI
  • Highly flexible and customizable
  • Lightweight and simple to use
  • Thousands of successful user cases

Start your free trial now

After you create a free account, you will receive specific instructions on how to download and start using jExcel. There is no time limit for your evaluation period; you will need a valid license only when you are ready to deploy your applications.

Click here and start with JExcel Pro

Create amazing online spreadsheets

A basic example how to embed a JavaScript spreadsheet on your applications. I would like to see more examples.

Source code example

<script src=""></script>
<script src=""></script>
<link rel="stylesheet" href="" type="text/css" />
<link rel="stylesheet" href="" type="text/css" />

<div id="spreadsheet"></div>

jexcel(document.getElementById('spreadsheet'), {
    minDimensions: [10,10],

Differences between the Pro and Community Edition Versions

Feature Description
DOM management With a new DOM management engine, the pagination and lazy loading options allow for higher efficiency in table rendering.
Formula parsing The upgraded formula engine ensures that the efficiency and accuracy of calculations are enhanced, even when dealing with chained formulas.
Cross-Worksheet calculations Work with formulas from different and multiple worksheets.
Data persistance It offers complete support for data persistence. Developers can persist not only data, but also the properties of data tables in a remote server. Data tables can thus be easily recreated.

Stronger integration with remote servers enables better management of record IDs and remote data persistence.
Decouple editors It allows the overwriting of column properties for one specific cell. For example, the table can be configured to render a drop down in one specific cell within a text type column.
Filter options It has the column property filterOptions, which helps developers overwrite the behavior of a cell based on the values of another cell. For example, I have two date columns in a table; the second should not have a date that is before the one in the first.
Real-time collaboration Its real-time spreadsheet online sharing capacity gives multiple users the opportunity for effective collaboration.
Custom editor template It offers a lot of new native columns types and provides a new simplified custom type template. Developers can extend and create new custom column types within mere minutes.
Worksheet management The advanced integrated tab management system gives users a higher degree of flexibility in their usage, including the option to create new worksheets inside a spreadsheet.
Add-ons and extensions It supports add-ons and plugins, which allows developers to use third-party extensions or create their own add-ons.
Premium support It offers timely and comprehensive technical support to help developers maximize the potential of jExcel Pro and fulfil any application requirements.

jExcel History

Jexcel 7.8.2

  • Filter for individual columns
  • Update filters programatically
  • Validation property, native and custom rules
  • Disabled internal sequence option for new records

Jexcel 7.7.9

  • Custom divisor for options in the dropdown

Jexcel 7.7.2

  • Toolbar with options
  • Responsive autocomplete column
  • textEditor to force input [input type='text'] for column type='number'

Jexcel 7.7.1

  • New events to customize the search results: onbeforesearch and onsearch.

Jexcel 7.7.0

If you migrate from 7.6.1 to 7.7.0 and are dealing with the DOM elements of the tabs using el.children[0], that is changed to el.tabs.headers.
  • New tabs with navigation.

Jexcel 7.6.1

  • Apply filters programatically: filter(integer columnNumber, Object values)

Jexcel 7.4.2

  • A new spreadsheet event: oncomments(DOMElement el, Object cells)

Jexcel 7.4.0

  • New column methods: getColumnIdByName, getColumn, setColumn
  • executeFormula with optional x, y references.

Jexcel 7.3.5

  • debugFormulas: true

Jexcel 7.3.0

  • InternationalKeyboard initialization property
  • New jexcel_object class for external elements
  • Better searching/filtering integration

Jexcel 7.2.0

  • Automatic scroll during dragging or selection
  • Freeze nested headers
  • Freeze index numbers

Jexcel 7.1.6

  • Wildcard domain certificate licenses
  • Formula caching

Jexcel 7.1.0

  • General formula engine refactoring
  • Cross-worksheet formula updates and fixes
  • Go-to to row method
  • Merge selected cells

Jexcel 7.0.0

We are proud to release the new version of Jexcel. More performance and better spreadsheet felling experience for the user.

  • Cross-worksheet spreadsheet formula support
  • Formula cache
  • Multiple filter and search combination
  • Spreadsheet with lazycolumns
  • New mergeCells controllers
  • Merge cell updates with insert/delete rows and columns
  • Copy and paste with formulas shift updates
  • Optimizations
  • New dragging/resizing controllers for columns and rows
  • New copy/paste behavior, closer to other software behaviors
  • Better record ids management
  • New arrow navigation
  • Calendar and dropdown options

Jexcel 6

It was not released to the public.

Jexcel 5.6.7

  • setProperty to render changes in the column.

Jexcel 5.6.6

  • Copy and paste formulas
  • Formulas fixes on delete/insert rows
  • setConfig to change dimensions
  • setHeight to accept arrays of rows

Jexcel 5.6.1

  • New flag and default: includeHiddenRowsOnCopy: false
  • filterOptions with more obvious behavior

Jexcel 5.6.0

  • Full screen with toolbars and worksheet tabs
  • Worksheet new methods, and initial configuration
  • Dropodwn with extra properties and filterOptions
  • New toolbar with new default options

Jexcel 5.5.0

  • New worksheet events
  • New worksheet actions on contextmenu
  • Security increase on formulas and editors
  • Jsuites v3 integration
  • Toolbars
  • New intersheet relation editor
  • Formula security

Jexcel 5.0.0

  • Calendar filter, to create conditions before open
  • New detached borders and copying indication border
  • New formula and loading engine
  • New faster navegation options
  • Various different native column type implementations
  • New decouple custom column template object
  • New cells property capable to set a type for one specific cell
  • HTML content compabilibiliy
  • Complete data and configuration persistence support
  • Remote tables and table multiple users syncronization (jExcel Cloud)
  • Theme
  • Fixed formulas on footers
  • Formula can return DOM elements
  • Dynamic column type changing

Jexcel 4.0.1

  • Freeze columns
  • Multiple columns resize
  • New smart key navigation
  • New smart merge cell methods
  • Support for large tables, only loads what is necessary when using lazyloading or pagination
  • Faster formula engine
  • New native formula methods
  • Super event: centralized event handler method
  • Easier backend integration

Jexcel 3.6.0

  • Better formula parsing
  • New events
  • New initialization options
  • General fixes

Jexcel 3.2.3

  • getMeta, setMeta methods
  • Npm package with jSuites
  • General fixes

Jexcel 3.0.1

jExcel v3 is a complete rebuilt JavaScript Vanilla version. For that reason, it was not possible to keep complete compatibility with the previous version. If you are upgrading you might need to implement a few updates in your code. If you have questions, you can review the article upgrading from jExcel v2 or Handsontable.

The jExcel v3 brings a lot of great new features:

  • Drag and drop columns
  • Resizable rows
  • Merge columns
  • Search
  • Pagination
  • Lazy loading
  • Full-screen flag
  • Image upload
  • Native color picker
  • Better mobile compatibility
  • Better nested headers compatibility
  • Amazing keyboard navigation support
  • Better hidden column management
  • Great data picker: dropdown, autocomplete, multiple, group options and icons
  • Importing from XSLX (experimental)

Big improvements are included, such as:

  • A completely new formula engine with no external dependencies with much faster results.
  • Absolutely no selectors, means a much faster application
  • New native columns
  • No jQuery is required
  • React, Vue and Angular examples
  • XLXS support using a custom sheetjs (Experimental).

Jexcel 2.1.0

We are glad to bring you the latest jquery plugin version, with the following improvements:

  • Mobile touch fixes
  • Paste fixes & New CSV parser

Jexcel 2.0.0

  • New radio column
  • New dropdown with autocomplete and multiple selection options
  • Header/body separation for a better scroll/column resize behavior and compatibility
  • Better text-wrap including alt+enter excel compatibility
  • New set/get meta information
  • New set/get config parameters
  • New set/get programmatically cell style
  • New set/get cell comments
  • New table custom toolbar
  • New responsive calendar picker

Jexcel 1.5.7

  • Checkbox column type improvements
  • Destroy jquery table updates

Jexcel 1.5.1

  • Spreadsheet data overflow and fixed headers. See an example
  • Navigation improvements

Jexcel 1.5.0

  • Relative insertRow, deleteRow, insertColumn, deleteColumn. See an example
  • Redo, Undo action tracker for insertRow, deleteRow, insertColumn, deleteColumn, moveRow
  • New formula column recursive chain
  • New alternative design option bootstrap-like. See an example
  • updateSettings updates

Javascript spreadsheet examples

  • Loading from a JSON object
    How to create a dynamic table from a JSON object.

  • Worksheets
    How to enable new worksheets to be added on the fly on the online spreadsheets.

  • Formulas on table footer
    Adding fixed formulas on the table footer.

  • Column filters
    How to enable column filters on a jExcel spreadsheet.

  • Spreadsheet as a webcomponent
    How to create a spreadsheet JavaScript webcomponent using jExcel.

  • React Implementation
    An example of how to integrate jExcel with React.

  • VUE Implementation
    An example of how to integrate jExcel with Vue.

  • Angular Implementation
    An example of how to integrate jExcel with Angular.

  • Jquery Implementation
    An example of how to integrate jExcel with jQuery.

  • Lazy loading
    An example of tackling large table datasets using jExcel Pro.

  • Search and pagination
    An example of utilizing search and pagination to tackle big datasets.

  • Custom search
    How to customize the native spreadsheet search methods using onbeforesearch event.

  • Column types
    Learn more about the powerful column types. This example demonstrates all native column types and how to create your own custom type.

  • Advanced dropdown
    Examples of how to handle simple, advanced, multiple, autocomplete, and conditional dropdowns. Learn how to add groups and images to your dropdown column type.

  • Date and datetime picker
    A advanced calendar usage, date and datetime picker, valid date ranges, and conditional rendering.

  • Images
    An example of how to embed and upload images to your spreadsheet.

  • Email and Links
    Learn how to embed links and email to your spreadsheet.

  • Progressbar
    Include a progress bar column type in your spreadsheet to create a better visual experience for your applications.

  • Autonumber
    Learn how to use the autonumber column type in your spreadsheet to enhance the syncing of the spreadsheet data with databases, as well as date persistence.

  • HTML editor
    Learn how to allow users to include rich text to your spreadsheet using the new HTML editor column type.

  • Custom column type
    How to create custom column types using jExcel Pro.

  • Programmatically updates
    Learn how to apply changes to your table programmatically. Learn how to add, delete and move columns and rows, sorting, and other options.

  • Spreadsheet Style
    Learn how to customize your JavaScript spreadsheet and bring a better visual experience to your applications.

  • Table Scripting
    Learn how to tackle conditional actions in your spreadsheet based on the available data within it.

  • Events
    Create rich and advanced spreadsheet behaviors using JavaScript events.

  • Importing data
    How to create a new spreadsheet based on different data sources, such as CSV, JSON, array, or XLSX files.

  • My first basic spreadsheet
    Create a basic JavaScript spreadsheet.

  • Create a javascript spreadsheet from a CSV file
    How to create a JavaScript spreadsheet or data grid based on a CSV file.

  • Formulas
    Learn how to use Excel-like formulas on your JavaScript spreadsheet.

  • Custom Formulas
    Unleash the power of your tables by bringing formulas and custom JavaScript methods to your jExcel spreadsheet.

  • Formulas across multiple worksheets
    How to use formulas across multiple worksheets.

  • Spreadsheet toolbars
    An example of how to enable or customize your JavaScript spreadsheet toolbar.

  • Column comments
    How to allow comments in your table spreadsheet.

  • Headers
    Enable nested headers in your spreadsheet and learn how to set or get header values.

  • Translations
    How to translate default messages from jExcel.

  • Meta information
    Manage hidden information about your cells using meta information methods. Learn how to set and reveal hidden information.

  • Merged cells
    An example of how to merge cells in your JavaScript tables.

  • Sorting columns
    An example of how to sort the table by columns via JavaScript.

  • Readonly Columns
    How to use readonly columns and cells. Learn how to programmatically change the readonly status of one cell.

  • Custom Contextmenu
    How to use and customize the spreadsheet contextmenu. Learn how to add custom actions to your spreadsheet.

  • Freeze columns
    Set up freeze columns in a jExcel JavaScript spreadsheet.

  • Text wrapping
    How to setup the text wrap on the cells in your spreadsheet.

  • Create from a HTML table
    Create a jExcel table from a simple HTML table.

  • Dealing with remote IDs
    Learn how to manage and sync remote IDs of database records with your spreadsheets.

  • Data persistence
    Learn how data persistence can help you create exceptional online spreadsheets.

  • Including charts on your spreadsheets
    Learn how to include charts on your spreadsheets.

  • Jexcel to XLS
    How to export jexcel to XLS excel file.


You require a license to use this software. Please choose from our subscription plans.

About jExcel

Inspired by other spreadsheet software such as Excel and Google Spreadsheet, the jExcel Pro is a fully original JavaScript software created to facilitate data input and manipulation in web-based applications.

This software has two different distributions, the Community Edition (CE) and the Pro. It is a lightweight alternative to other JavaScript spreadsheet libraries. Therefore, you whould be familiar migrating your data to Jexcel Spreadsheet.

The first time we were involved in a web-based spreadsheet development was in 2005, when we created a datagrid inspired by DHTMLX. However, because of the lack of audience, we decided to discontinue its development. A few years ago, we discovered Handsontable. It is an excellent software, but in certain extensions, we were limited from making integrations of a greater complexity. For example, it is not possible to have a simple key-value dropdown. We saw the opportunity and decided to build something from scratch—it would be completely original and allow for a simple transition between Handsontable and itself.

If you are a developer who likes Microsoft Excel, Handsontable, DataGrid, or would like to give users a new user-friendly experience, you are in the right place. You can manipulate the jExcel JavaScript spreadsheet data with JSON, CSV, or simple arrays, making it easy for you to integrate jExcel into any of your applications. We want to make sure that you enjoy using our tool and find it useful, so if you have any questions, just let us know. We are always happy to offer you free help!

All trademarks belong to their respective owners.