这是我的电子表格

这就是我想要做的。
当用户输入第4行及以下的任何数据时,onEdit()函数会检查最上面的一行,看看Session.getActiveUser();是否与"me@email.com“匹配。
*单元格范围A:C的第1、2和3列只能通过A1的电子邮件进行编辑。
*单元格范围D:F的第1、2和3列只能通过D1的电子邮件进行编辑。
到目前为止,这只是我检查用户编辑的单元格所做的工作。
function onEdit(e) {
var editedSheet = e.source.getActiveSheet();
var editedRange = e.source.getActiveRange();
// clear edited value if email does not match
if (Session.getActiveUser() != range.getCell(1,1).getValue()) {
editedRange.setNote(""); // clear value
}
}问题是,检查A1、D1等等中的每个单元格将非常繁琐,因为我在电子表格中有几个工作表。
其他工作表也不一定从'A‘列开始。单元格结构可能从列'B‘开始。
发布于 2015-01-05 20:15:52
对于这种类型的操作,OnEdit不是很可靠,请考虑另一种限制用户输入的方法,您可以使用sideBar、GoogleForm、发布的OnEdit (doGet)、另一个工作表等。
在onEdit中,如果用户复制粘贴、非常快速地编辑大量单元格、离线再上线、调用太多等等,你就会得到各种各样的bug。
https://stackoverflow.com/questions/27749898
复制相似问题