2

How can I protect a worksheet but allow the user to format the columns in Office Scripts? I have tried a few things but haven't had any success.

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

Please see the attached link

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

Ethan
  • 808
  • 3
  • 21

1 Answers1

3

The protect() method takes an object as argument for the 1st argument. See below. I noticed that cell background/fill doesn't work even with this setting. All other formatting works such as font color, border, etc. That may be a bug that we'll follow-up on.

function main(workbook: ExcelScript.Workbook) {
    let sheet = workbook.getWorksheet("By Item");
    sheet.getProtection().unprotect();
    sheet.getProtection().protect({
        allowFormatCells: true
    });
}
Sudhi Ramamurthy
  • 2,358
  • 1
  • 10
  • 14