我使用了ignite ui excel库来使用JavaScript创建一个excel工作簿。但遗憾的是,我没有找到任何方法在其库中创建只读的Excel列/行。有没有办法在JavaScript / Jquery中创建excel表之前将列设为只读?
答案 0 :(得分:0)
我通过以下代码/步骤实现了这一目标:
首先使用代码保护整个Excel工作表:
sheet.protect();
{sheet是我的工作表名称}
然后使用代码解锁excel表格的某些单元格:
sheet.getCell('H'+j).cellFormat().locked(false);
{其中H是列名,j是行号,整数值}
希望能帮助别人。
答案 1 :(得分:0)
概述:
我正在使用nodejs和exceljs,我正在文件xlsx上搜索保存新行数据,同时打开该文件以读取Windows 10上的信息(不保存),但是由于excel锁定,我无法要写入文件,exceljs抛出了一个异常( Error : EBUSY: resource busy or locked)
。我在exceljs上搜索属性“ ReadOnlyRecommended”以使用ReadOnlyRecommended = true保存文件,这样我可以读取文件并同时在上面写(在原始文件中,因为它是只读的),但是不幸的是exceljs没有这种选择。因此,经过长时间的搜索,我使用了fs.chmod
const fs = require('fs');
是我第一次创建或编辑文件时使用fs.chmodSync(excelFilePath, 0o600);
来写文件,但是写完后我使用fs.chmodSync(excelFilePath, 0o400);
将文件设置为只读,这样,当用户打开excel文件时,该文件处于只读模式,因此excel不会锁定该文件。
我希望这对某人有帮助。