gpt4 book ai didi

node.js - 在 XLSX 导出期间在工作表的开头插入新行/注释

转载 作者:行者123 更新时间:2023-12-04 17:35:46 25 4
gpt4 key购买 nike

我是 node.js 的新手,我能够将我的数据写入工作簿,但我面临在数据开头插入注释的问题。
请注意,数据是从数据库中获取的,但注意是静态的或来自 session 。

var export = XLSX.utils.json_to_sheet(this.obj);
var wb = XLSX.utils.book_new() // make Workbook of Excel
// add Worksheet to Workbook
XLSX.utils.book_append_sheet(wb, export, 'sheet1') // sheet1 is name of Worksheet
XLSX.utils.sheet_add_json(wb.Sheets.sheet1,
[
{note: "This is a note"},
],
{
header: ["note"],
skipHeader:true,
origin: "A1"
}
);
// export Excel file
XLSX.writeFile(wb, 'book.csv') // name of the file is 'book.xlsx'

在上面的代码中,我尝试使用 sheet_add_json 添加注释,但它覆盖了 A1 处的现有数据。虽然在尝试使用空单元格时效果很好

以下是 excel 格式的预期输出。

这是一个注意事项
Name    RollNo  Age
Abc 101 10
def 102 15
xyz 103 20

但根据我得到的当前代码
This is a Note  RollNo  Age
Abc 101 10
def 102 15
xyz 103 20

最佳答案

来自文档“XLSX.utils.sheet_add_json 采用对象数组并更新现有工作表对象。它遵循与 json_to_sheet 相同的过程并接受一个选项参数:”它只会更新,或者它可以在底部添加为新行,使用原点:-1。

试试这个:

//create sheet with empty json/there might be other ways to do this
export = XLSX.utils.json_to_sheet({});

//start frm A2 here
XLSX.utils.sheet_add_json(wb.Sheets.sheet1,
[{
Name: 'Abc',
RollNo: 101,
Age: 10
},
{
Name: 'def',
RollNo: 102,
Age: 15
},
{
Name: 'xyz',
RollNo: 103,
Age: 20
}],
{
header: ["note"],
skipHeader:true,
origin: "A2"
}
);

//then add ur txt
XLSX.utils.sheet_add_json(wb.Sheets.sheet1,
[
{note: "This is a note"},
],
{
header: ["note"],
skipHeader:true,
origin: "A1"
}
);

关于node.js - 在 XLSX 导出期间在工作表的开头插入新行/注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56685125/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com