在 Node.js 中利用 js-xlsx 处理 Excel 文件

参考链接:http://scarletsky.github.io/2016/01/30/nodejs-process-excel/

var _headers = [''],
    _headers_len = _headers.length;
headers = _headers.map((v, i) => Object.assign({}, {v: v, position: String.fromCharCode(65 + i) + 1}))
    .reduce((prev, next) => Object.assign({}, prev, {[next.position]: {v: next.v}}), {});

// 为 _headers 添加对应的单元格位置

    // [ { v: 'id', position: 'A1' },

    // { v: 'name', position: 'B1' },

    // { v: 'age', position: 'C1' },

    // { v: 'country', position: 'D1' },

    // { v: 'remark', position: 'E1' } ]
var excelData = {};

var output = Object.assign({}, headers, excelData);
//console.log(output);
// 获取所有单元格的位置
var outputPos = Object.keys(output);
// 计算出范围
var ref = outputPos[0] + ':' + outputPos[outputPos.length - 1];
var wb = {
    SheetNames: ['mySheet'],
    Sheets: {
        'mySheet': Object.assign({}, output, {'!ref': ref})
    }
};
XLSX.writeFile(wb, 'output.xlsx');

猜你喜欢

转载自blog.csdn.net/weixin_41017246/article/details/83752199