使用 GAS 保护 Google Sheet 中的指定单元格

在夏天

我有这个:


  var sh = SpreadsheetApp.openById(ssID).getSheetByName('Sheet0');
  var protection = sh.protect().setDescription('BVDATA');
  var me = Session.getEffectiveUser();
  protection.addEditor(me).setUnprotectedRanges([(sh.getRange(sh.getLastRow()+1, 6, sh.getLastRow(),1))]);
  protection.removeEditors(protection.getEditors());

  if (protection.canDomainEdit()){
  protection.setDomainEdit(false);
  }
}

我有一系列单元格,除 F2: F 外都受到保护。此代码运行良好,它将自动保护Sheet0除最后一行以外的所有单元格但我真正需要的是,它只需要为已经输入内容OK(F) 的单元格启用保护,空白和错误的单元格仍然可以编辑。我需要如何编辑它才能让它按照我的意愿工作。

Tanaike

我相信你的目标如下。

  • 您想保护列“F”的单元格,仅当单元格值为OK.

在这种情况下,作为一个简单的修改,您的脚本的以下修改如何?

来自:

protection.addEditor(me).setUnprotectedRanges([(sh.getRange(sh.getLastRow()+1, 6, sh.getLastRow(),1))]);

至:

protection.addEditor(me).setUnprotectedRanges(sh.getRange("F1:F").createTextFinder("^(?!OK).*$").matchEntireCell(true).useRegularExpression(true).findAll());
  • 在此修改中,除了具有 OK are retrieved using TextFinder and the retrieved ranges are set forsetUnprotectedRanges`值的单元格之外的单元格

参考资料:

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用 GAS 保护 Google Sheet 中的指定范围

在 Google 表格单元格 (GAS) 中打印未指定数量的数组内容

如何从受保护的单元格中删除编辑器或永久保护Google表格中的单元格

使用vba中指定单元格中的输入锁定或解锁单元格

如何使用If语句将单元格值从sheet1传输到Google表格中的工作表2?

从 Google Sheet 导出数据的密码保护

Google Sheet GAS中过滤方法的字符串部分匹配

使用密钥/密码/密码保护“ Google Sheet Web App” API的安全

使用Google Sheet Create API创建受保护的列时出错

如何使用 PHP 版本的 Google Sheet API v4 合并单元格

如何使用 google sheet app 脚本在单元格上添加评论

从一个 Google Sheet 单元格中提取多个链接,然后使用 Google Apps Script 将它们作为超链接粘贴到 Google Doc 中

根据条件复制特定值并粘贴到 Google Sheet 中另一个工作表的特定单元格中

如何等待 GAS 自定义函数完成然后继续使用 google sheet api?

是否有查询参数可以使用 GAS 在 Google Sheet 导出到 pdf 上设置边距

使用VBA宏打开,锁定单元格,然后保护工作簿,但仍可以编辑LOCKED,PROTECTED单元格

Google Spreadsheet-仅在另一个单元格论坛中使用否定单元格

如何使用vba宏从指定单元格开始计算excel中的行数

如何使用 c# 在 Excel 工作表的指定单元格中插入新行?

使用 API 在 Google Sheet 中写入的问题

如何使用phpspreadsheet保护单个单元格

根据单元格内容更改 Google Sheet 触发频率

GOOGLE SHEET SUM 通过拆分单元格文本

Google Sheet 可以通过颜色选择单元格吗

我的 Google Sheet 中的数据没有出现在正确的单元格中

无法使用受保护的工作表中的代码更改单元格的值

如何使用Python检测Excel文件中受保护的单元格?

遍历Google表格中的选定单元格

Google Sheet API V4(Java)在单元格中附加日期