_ _ __ ____ _ _ ___ __ __ ___ ( \/ )( ) / ___)( \/ ) / __) / _\ ( ) / __) ) ( / (_/\\___ \ ) ( ( (__ / \/ (_/\( (__ (_/\_)\____/(____/(_/\_) \___)\_/\_/\____/ \___)
安装
与 无数字 :
npm install xlsx-calc
或
yarn add xlsx-calc
如何使用
和伟大的人一起阅读工作手册 js-xlsx (英语) 莉比,别这样.
var XLSX = require('xlsx');
var workbook = XLSX.readFile('test.xlsx');
// change some cell value
workbook.Sheets['Sheet1'].A1.v = 42;
// recalc the workbook
var XLSX_CALC = require('xlsx-calc');
XLSX_CALC(workbook);
// recalc options for ignoring erroneous formulas
XLSX_CALC(workbook, { continue_after_error: true, log_error: true })
公式js 整合
npm install --save @formulajs/formulajs
var XLSX_CALC = require('xlsx-calc');
// load your calc functions lib
var formulajs = require('@formulajs/formulajs');
// import your calc functions lib
XLSX_CALC.import_functions(formulajs);
var workbook = {Sheets: {Sheet1: {}}};
// use it
workbook.Sheets.Sheet1.A5 = {f: 'BETA.DIST(2, 8, 10, true, 1, 3)'};
XLSX_CALC(workbook);
// see the result -> 0.6854705810117458
console.log(workbook.Sheets.Sheet1.A5.v);
如何捐款
读取 基本测试.js。 。 。 .
运行测试
$ npm run test-w
运行网络软件包
$ npm run dev
写一些测试如:
//(...)
describe('HELLO', function() {
it('says: Hello, World!', function() {
workbook.Sheets['Sheet1'].A1.f = 'HELLO("World")';
XLSX_CALC(workbook);
assert.equal(workbook.Sheets['Sheet1'].A1.v, "Hello, World!");
});
});
//(...)
在 src/公式.js 文件中注册您的公式/功能 在“经修改的表格”下面
// +---------------------+
// | FORMULAS REGISTERED |
// +---------------------+
var formulas = {
'FLOOR': Math.floor,
'COUNTA': counta,
'IRR': irr,
'HELLO': hello // <---- Your contribution!!
};
将执行功能写入"The Empacts"评注下.
// +---------------------+
// | THE IMPLEMENTATIONS |
// +---------------------+
function hello(name) {
return name;
}
如果一切都好 你会看到摩卡出来:
1) XLSX_CALC HELLO says: Hello, World!:
AssertionError: "World" == "Hello, World!"
+ expected - actual
-World
+Hello, World!
at Context.<anonymous> (test/basic-test.js:510:20)
因此,最后正确执行:
// +---------------------+
// | THE IMPLEMENTATIONS |
// +---------------------+
function hello(name) {
return "Hello, " + name + "!";
}
现在在终端:
HELLO
✓ says: Hello, World!
79 passing (75ms)
把气球西瓜给我!
创建拉动请求
Th!
贡献者
制造的 贡献者-img。 。 。 .
麻省理工学院
版权2017年,法比奥希罗
特此准许任何人免费获得本软件和相关文件文件("软件")的副本,不受限制地在软件中进行交易,包括不受限制地享有软件的使用、复制、修改、合并、出版、分发、分版和(或)销售的权利,并允许软件获得者这样做,但须符合下列条件: 1
上述版权通知和许可通知应载入软件的所有副本或大部分.
软件是提供的"AS IS", 没有任何种类的恐惧, 释放或被卷入, 包括但不限制在 危机的保障, 证明一个特定的目的和无关。 任何索赔、索赔或其他负债,无论是合同、交易或其他行为,产生于、产生于或涉及软件或软件的使用或其他交易的行为,都不得作为担保.