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

在夏天
function Lock(){

  var sh = SpreadsheetApp.openById(ssID).getSheetByName('6');
  var protection = sh.protect().setDescription('BVDATA');
  var me = Session.getEffectiveUser();
protection.addEditor(me).setUnprotectedRanges(sh.getRange("F1:F").createTextFinder("^(?!OK).*$").matchEntireCell(true).useRegularExpression(true).findAll());
  protection.removeEditors(protection.getEditors());

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

@Tanaike 引导我这样做。现在我有一个问题,该代码将自动保护 1 个单元格 F 如果值为OK如果 F 的值为? ,对我来说有没有办法保护它F:G(就像F5:G5如果F5value将被保护OKOK我尝试修改:

protection.addEditor(me).setUnprotectedRanges(sh.getRange("F1:G").CreateTextFinder("^(?!OK).*$").MatchEntireCell(true).useRegularExpression(true).findAll());

但它仅保护单元G当该值OK

Tanaike

我相信你的目标如下。

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

为了实现这一点,下面的修改如何?

来自:

protection.addEditor(me).setUnprotectedRanges(sh.getRange("F1:F").createTextFinder("^(?!OK).*$").matchEntireCell(true).useRegularExpression(true).findAll());

至:

protection.addEditor(me).setUnprotectedRanges(sh.getRange("F1:F").createTextFinder("^(?!OK).*$").matchEntireCell(true).useRegularExpression(true).findAll().map(r => r.offset(0, 0, 1, 2)));
  • 在此修改中,使用 扩展了搜索范围offset

参考:

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

是否有任何HTML代码可以应用与我们在Google Sheet / GAS中自定义的货币格式相同的货币格式?

使用Google Apps脚本保护范围

使用Python更新Google Sheet APIv4中的值

使用Google OAuth保护ASPNET Core中的Web服务

另一个用户应该能够使用Google App脚本更新Google电子表格中的受保护范围

如何使用密码保护Google表格

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

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

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

如何为GAS授权范围以编辑Google Spreadsheets

Google Sheet条件导入范围

范围不相交的Google脚本保护问题

在Google Sheet或Excel中使用Python拍摄范围的屏幕截图?

如何使用Google Authenticator保护Linux终端?

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

如何在 GAS 中创建一个脚本来在 Google Sheet 中创建一个按钮或等效的按钮?

使用 getRange + clear 时出错(Google Sheets & GAS)

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

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

如何使用 GAS/App 脚本将背景颜色设置为 Google 表格中的过滤行

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

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

如何使用google sheet api v4 javascript删除google sheet中的空白行?

如何使用 ARRAYFORMULA 对 google sheet 中的 Action 进行分类?

使用 Google Sheet 中的数据创建多项选择题

无法使用 Google Sheet 中的 IMPORTHTML 或 IMPORTXML 从网站抓取数据

無法使用 GAS 從 Google Drive 下載文件

当编辑器使用 Google Apps Scritps 在受保护范围内运行功能时,如何使用 Web App 方法?

使用条件nodejs google sheet更新行中的特定值