首页 > 解决方案 > 如何使用 excel javascript API 从受写保护的工作表中仅解锁特定单元格

问题描述

我正在使用 Office 365 和 Excel 在线版(内部版本 16.0.9403.1875)。

我正在使用Excel javascript API创建 Microsoft Excel 在线加载项

除了少数单元格(范围)之外,我有一个要求,例如对整个工作表进行写保护。

所以,我提到了Format protection API,但是在调试时,'locked' 属性不起作用。

我提到,也通过这个链接堆栈溢出

还有其他

因为,我已经尝试过上述论坛链接给出的建议。

我只是期待通过工作代码片段来回复。

我的代码示例如下

  Excel.run(function (ctx) {
  //Worksheet
  var sheet = ctx.workbook.worksheets.getItem("Sheet1");

  //Entire Range
  var entireRange = sheet.getRange();
  entireRange.format.protection.locked = false;  

  //Specific Range
  var range = sheet.getRange("A1:B5");  

  return ctx.sync()
    .then(() => {
      //Set specific range "locked" status to true.
      range.format.protection.locked = true;
    })
    .then(ctx.sync)
    .then(() => {
      //Protect Entire sheet
      sheet.protection.protect({
        allowInsertRows: false,
        allowDeleteRows: false
      });
    });
}).catch(errorHandler);

谢谢。

标签: exceloffice-js

解决方案


推荐阅读