我有一张Google电子表格,很多人都使用过它 每一行都像一个案例 我想 - 每当用户关闭案例时 - 自动保护其行,以便没有人能够修改它。
对于第一种情况(第2行),逻辑函数将是这样的
=IF (A2 and B2 and C2 is not blank or empty, and K2 is "done")
- >保护范围A2:K2,以便唯一能够修改它的是电子表格所有者
否则,就这样离开
我知道这不能通过工作表上的公式来完成,但可以通过脚本完成,所以,你能帮我解决这个问题吗?
答案 0 :(得分:0)
您可以使用Google Apps Script实现此目的。
利用Protection Class可以保护您选择的范围。您只需要处理所需的逻辑,以确定范围是否需要保护。
上页的示例代码:
// Protect range A1:B10, then remove all other users from the list of editors.
var ss = SpreadsheetApp.getActive();
var range = ss.getRange('A1:B10');
var protection = range.protect().setDescription('Sample protected range');
// Ensure the current user is an editor before removing others. Otherwise, if the user's edit
// permission comes from a group, the script will throw an exception upon removing the group.
var me = Session.getEffectiveUser();
protection.addEditor(me);
protection.removeEditors(protection.getEditors());
if (protection.canDomainEdit()) {
protection.setDomainEdit(false);
}