Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/438.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Javascript使excel单元格只读?_Javascript_Excel_Readonly_Cells - Fatal编程技术网

如何使用Javascript使excel单元格只读?

如何使用Javascript使excel单元格只读?,javascript,excel,readonly,cells,Javascript,Excel,Readonly,Cells,我使用ignite ui excel库使用JavaScript创建excel工作簿。但不幸的是,我没有找到任何方法使excel的列/行在其库中成为只读。在JavaScript/Jquery中创建excel工作表之前,有没有一种方法可以使列成为只读的?我通过以下代码/步骤实现了这一点: 首先使用以下代码保护整个excel工作表: sheet.protect() {工作表是我的工作表名称} 然后使用以下代码解锁excel工作表的某些单元格: sheet.getCell('H'+j).cellForm

我使用ignite ui excel库使用JavaScript创建excel工作簿。但不幸的是,我没有找到任何方法使excel的列/行在其库中成为只读。在JavaScript/Jquery中创建excel工作表之前,有没有一种方法可以使列成为只读的?

我通过以下代码/步骤实现了这一点:

  • 首先使用以下代码保护整个excel工作表:

    sheet.protect()
    {工作表是我的工作表名称}

  • 然后使用以下代码解锁excel工作表的某些单元格:

    sheet.getCell('H'+j).cellFormat().locked(false)
    {其中H是列名,j是行号,是整数值}

  • 希望对其他人有所帮助。

    概述:

    我正在使用nodejs和exceljs,当我的xlsx文件在windows 10上打开以读取信息(不保存)时,我正在搜索在该文件上保存新行数据,但由于excel锁定了该文件,我无法写入该文件,exceljs向我抛出了一个异常
    (错误:EBUSY:资源正忙或已锁定)
    。我在exceljs上搜索属性“ReadOnlyRecommended”,以便使用ReadOnlyRecommended=true保存文件,这样我可以读取文件,同时对其进行写入(在原始文件中,因为它是只读的),但不幸的是exceljs没有这样的选项。因此,经过长时间的搜索,我使用来自的
    fs.chmod
    实现了这一点
    const fs=require('fs')当我第一次创建或编辑时,我使用
    fs.chmodSync(excelFilePath,0o600)可以在文件上写入,但当我完成写入时,我使用
    fs.chmodSync(excelFilePath,0o400)
    将文件设置为只读,这样当用户打开excel文件时,该文件处于只读模式,因此excel不会锁定该文件。 我希望这对某人有帮助