使用选项保护Office脚本中的工作表

问题描述

如何保护工作表,但允许用户格式化Office脚本中的列?我尝试了一些尝试,但没有成功。

function main(workbook: ExcelScript.Workbook) {
    let sheet = workbook.getWorksheet("By Item");
    sheet.getProtection().protect(ExcelScript.WorksheetProtectionoptions.allowFormatColumns);
}

请参阅附件链接

https://docs.microsoft.com/en-us/javascript/api/office-scripts/excelscript/excelscript.worksheetprotection?view=office-scripts#protect-options--password-

解决方法

protect()方法将一个对象用作第一个参数的参数。见下文。 我注意到,即使使用此设置,单元格背景/填充也不起作用。所有其他格式设置都可以使用,例如字体颜色,边框等。这可能是我们将继续研究的错误。

function main(workbook: ExcelScript.Workbook) {
    let sheet = workbook.getWorksheet("By Item");
    sheet.getProtection().unprotect();
    sheet.getProtection().protect({
        allowFormatCells: true
    });
}