在angular js应用程序中使用alasql将数据导出到excel时,如何添加标题行和单元格格式?

时间:2019-04-09 07:27:07

标签: javascript angularjs excel alasql

在我的有角度的应用程序中,我想将数据导出到excel文件中,为此我使用了alasql。 如何添加标题,该标题应该是与单元格合并的行,并且还要在excel工作表中显示用于生成数据的过滤器参数?

var mystyle = {
    headers: true,
    column: { style: { Font: { Bold: "1" } } },
};

let dataCopy = JSON.parse(JSON.stringify(dataFiltered));
alasql('SELECT * INTO XLSX("' + reportName + '",?) FROM ?', [mystyle, dataCopy]);

我有filterParams数组,其中包含具有键值对中值的筛选器参数。

我想用表格标题的第一行生成Excel工作表,该行应在其下方生成数据。 标题后面应该是要显示的参数。

1 个答案:

答案 0 :(得分:3)

ALASQL不支持合并单元格或应用过滤器。但是您可以添加标题/标题行。您需要创建一个标题行,该标题行应具有与数据相同的列数和键。然后将此标题行与您的数据合并并导入excel。

var headers = alasql('select "Title 1" as Key1, "Title 2" as Key2, "Title 3" as Key3');
let dataCopy = JSON.parse(JSON.stringify(dataFiltered));
var mergedArray = $.merge(headers, dataCopy);
alasql('SELECT * INTO XLSX("' + reportName + '",?) FROM ?', [mystyle, mergedArray]);

如果可以解决您的问题,请接受答案。干杯!