首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >SheetJS js-xlsx -在单元格范围内添加超链接公式

SheetJS js-xlsx -在单元格范围内添加超链接公式
EN

Stack Overflow用户
提问于 2020-04-18 12:30:52
回答 1查看 1.3K关注 0票数 1

我无法解密文献资料..。

目标是在中创建一个基于另一个单元的单元的链接公式。

代码语言:javascript
运行
复制
let wb = XLSX.utils.book_new();
wb.Props = {
    Title: `export`,
    Subject: "export",
};

let ws_data = [
    [
        "sku",
        "product",
        "picture"
    ]
];

products.map(item => {
    ws_data.push([
        item.sku,
        item.product,
        `=HYPERLINK("/pics/"&${item.sku}&".jpg";"link")`,
    ])
})

wb.SheetNames.push("data");
let ws = XLSX.utils.aoa_to_sheet(ws_data);
wb.Sheets["data"] = ws;
let wbout = XLSX.write(wb, { bookType: 'xlsx', type: 'binary' });

saveByteArray([convertBinaryToOctetStream(wbout)], `export.xlsx`);

显然,这只是将=HYPERLINK("/pics/all/"&sku&".jpg";"link")文本放在单元格中。怎么可能是实际的公式呢?

EN

回答 1

Stack Overflow用户

发布于 2021-04-29 14:16:27

您能试着分别映射数组,然后在工作表中使用它吗?我猜你想要第三栏的链接。

代码语言:javascript
运行
复制
products.map(item => {
    ws_data.push([
        item.sku,
        item.product,
        'link',
    ])
})

products.foreach(item => {
    ws_links.push("/pics/" + item.sku + ".jpg" )
})
    
wb.SheetNames.push("data");
let ws = XLSX.utils.aoa_to_sheet(ws_data);
for (let i = 0; i < json.length; i++) {
    ws[XLSX.utils.encode_cell({
      c: 3,
      r: i
    })].l = { Target: ws_links[i] };
}
wb.Sheets["data"] = ws;
let wbout = XLSX.write(wb, { bookType: 'xlsx', type: 'binary' });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61289101

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档