使用 js-xlsx 导出 .xlsx 文件时如何设置单元格宽度

新手上路,请多包涵

我正在尝试使用 js-xlsx 为导出的 excel 文件设置固定的列/单元格宽度。

编辑:

这是 js-xlsx 的来源: https ://github.com/SheetJS/js-xlsx

数据视图

原文由 jgabrielfaria 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 3.2k
2 个回答

扩展这个问题,如果你需要根据你的内容设置自动宽度,你可以这样写:

 const worksheet = XLSX.utils.aoa_to_sheet(arrayOfArray);
worksheet['!cols'] = fitToColumn(arrayOfArray);

function fitToColumn(arrayOfArray) {
    // get maximum character of each column
    return arrayOfArray[0].map((a, i) => ({ wch: Math.max(...arrayOfArray.map(a2 => a2[i] ? a2[i].toString().length : 0)) }));
}

此函数假定您的第一行有最多的列。然后它会尝试通过计算内容字符长度来找到每列中最宽的单元格。

原文由 Icycool 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题