我使用Sheetjs导出文件,其中需要设置导出的excel的某个单元格格式为文本。
解决方法:在导入sheetJS的xlsx.full.min.js之后,再导入
GitHub - gitbrent/xlsx-js-style: SheetJS Community Edition + Basic Cell StylessSheetJS Community Edition + Basic Cell Styles. Contribute to gitbrent/xlsx-js-style development by creating an account on GitHub./gitbrent/xlsx-js-style
中的xlsx.bundle.js(直接复制文件中的js文件即可)。
再xlsx-style中可以对单元格设置属性s,s表示单元格样式,s包含一个名为numFmt的属性,通过这个属性可以设置导出的单元格格式,代码为
var workbook=XLSX.utils.book_new();var ws=XLSX.utils.aoa_to_sheet([['名称']])XLSX.utils.sheet_add_aoa(ws,[[{t:'s',v:12,s:{numFmt:49}}]],{origin:'T49'})XLSX.utils.book_append_sheet(workbook,ws,"sheet1");XLSX.writeFile(workbook,'文件名.xlsx')
这样得到的单元格在excel中点击右键设置单元格格式可以看到它的格式变成了文本。输入012也会显示012这样的字符串而不是12了。numFmt还可以设置其他的格式,例如小数点百分号,这些都可以通过设置numFmt的值得到。
如果觉得《sheetjs如何设置导出的单元格格式为文本》对你有帮助,请点赞、收藏,并留下你的观点哦!