tamc / Excel_to_code
Licence: mit
Roughly translate some Excel spreadsheets to Ruby or C.
Stars: ✭ 214
Programming Languages
Labels
Projects that are alternatives of or similar to Excel to code
Calx.js
jQuery Calx - a jQuery plugin for creating formula-based calculation form
Stars: ✭ 190 (-11.21%)
Mutual labels: excel, spreadsheet
Functional Data Grid
Data grids in functional style with ReactJS
Stars: ✭ 125 (-41.59%)
Mutual labels: excel, spreadsheet
Jupyterlab Spreadsheet
JupyterLab plugin for viewing spreadsheets, such as Excel .xls/.xlsx workbooks and OpenOffice .ods files
Stars: ✭ 95 (-55.61%)
Mutual labels: excel, spreadsheet
Documentserver
ONLYOFFICE Document Server is an online office suite comprising viewers and editors for texts, spreadsheets and presentations, fully compatible with Office Open XML formats: .docx, .xlsx, .pptx and enabling collaborative editing in real time.
Stars: ✭ 2,335 (+991.12%)
Mutual labels: excel, spreadsheet
Unpivotr
Unpivot complex and irregular data layouts in R
Stars: ✭ 148 (-30.84%)
Mutual labels: excel, spreadsheet
Hot Table
Handsontable - Best Data Grid Web Component with Spreadsheet Look and Feel.
Stars: ✭ 114 (-46.73%)
Mutual labels: excel, spreadsheet
Django Rest Pandas
📊📈 Serves up Pandas dataframes via the Django REST Framework for use in client-side (i.e. d3.js) visualizations and offline analysis (e.g. Excel)
Stars: ✭ 1,030 (+381.31%)
Mutual labels: excel, spreadsheet
Tui.grid
🍞🔡 The Powerful Component to Display and Edit Data. Experience the Ultimate Data Transformer!
Stars: ✭ 1,859 (+768.69%)
Mutual labels: excel, spreadsheet
X Spreadsheet
A web-based JavaScript(canvas) spreadsheet
Stars: ✭ 12,046 (+5528.97%)
Mutual labels: excel, spreadsheet
Excelize
Golang library for reading and writing Microsoft Excel™ (XLSX) files.
Stars: ✭ 10,286 (+4706.54%)
Mutual labels: excel, spreadsheet
Yii2 Export
A library to export server/db data in various formats (e.g. excel, html, pdf, csv etc.)
Stars: ✭ 153 (-28.5%)
Mutual labels: excel, spreadsheet
Documentbuilder
ONLYOFFICE Document Builder is powerful text, spreadsheet, presentation and PDF generating tool
Stars: ✭ 61 (-71.5%)
Mutual labels: excel, spreadsheet
Spreadsheet
The Ruby Spreadsheet by ywesee GmbH
Stars: ✭ 1,033 (+382.71%)
Mutual labels: excel, spreadsheet
Phpspreadsheet
A pure PHP library for reading and writing spreadsheet files
Stars: ✭ 10,627 (+4865.89%)
Mutual labels: excel, spreadsheet
Desktopeditors
An office suite that combines text, spreadsheet and presentation editors allowing to create, view and edit local documents
Stars: ✭ 1,008 (+371.03%)
Mutual labels: excel, spreadsheet
Xlsx
Fast and reliable way to work with Microsoft Excel™ [xlsx] files in Golang
Stars: ✭ 132 (-38.32%)
Mutual labels: excel, spreadsheet
Test files
📚 SheetJS Test Files (XLS/XLSX/XLSB and other spreadsheet formats)
Stars: ✭ 150 (-29.91%)
Mutual labels: excel, spreadsheet
Excel to Code
excel_to_c - roughly translate some Excel files into C.
excel_to_ruby - roughly translate some Excel files into Ruby.
This allows spreadsheets to be:
- Embedded in other programs, such as web servers, or optimisers
- Without depending on any Microsoft code
For example, running these commands turns this spreadsheet into this Ruby code or this C code.
Install
Requires Ruby. Install by:
gem install excel_to_code
Run
To just have a go:
excel_to_c <excel_file_name>
This will produce a file called excelspreadsheet.c
For a more complex spreadsheet:
excel_to_c --compile --run-tests --settable <name of input worksheet> --prune-except <name of output worksheet> <excel file name>
See the full list of options:
excel_to_c --help
Gotchas, limitations and bugs
- No custom functions, no macros for generating results
- Results are cached. So you must call reset(), then set values, then read values.
- It must be possible to replace INDIRECT and OFFSET formula with standard references at compile time (e.g., INDIRECT("A"&"1") is fine, INDIRECT(userInput&"3") is not.
- Doesn't implement all functions. See which functions are implemented.
- Doesn't implement references that involve range unions and lists (but does implement standard ranges)
- Sometimes gives cells as being empty, when excel would give the cell as having a numeric value of zero
- The generated C version does not multithread and will give bad results if you try.
- The generated code uses floating point, rather than fully precise arithmetic, so results can differ slightly.
- The generated code uses the sprintf approach to rounding (even-odd) rather than excel's 0.5 rounds away from zero.
- Ranges like this: Sheet1!A10:Sheet1!B20 and 3D ranges don't work.
Report bugs: https://github.com/tamc/excel_to_code/issues
Changelog
See Changes.
License
See License
Hacking
Source code: https://github.com/tamc/excel_to_code
Documentation:
- Installing from source
- Structure of this project
- How does the calculation work
- How to fix parsing errors
- How to implement a new Excel function
Some notes on how Excel works under the hood:
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].