我在旧的和旧的Google表格上都尝试了以下功能,但它只适用于后者:
function onEdit() {
var s = SpreadsheetApp.getActiveSheet();
var cell = s.getActiveCell();
var val = cell.getValue();
var icol = cell.getColumn();
if (icol == 8){
if (val == "Em contacto"){
var roar = cell.getRow();
var tcell = s.getRange(roar,14);
var date = Utilities.formatDate(new Date(), "GMT-3", "dd/MM/yyyy HH:mm");
tcell.setValue(date);
};
};
}
只要使用字符串“Em contacto”编辑H列中的单元格,它就会向N列添加时间戳。
是否有不同的方法可以在不使用旧纸张的情况下完成此操作?
答案 0 :(得分:0)
某些电子表格服务方法存在一些已知问题
https://developers.google.com/apps-script/migration/sheets#issues_with_individual_methods
在您的特定情况下,调用s.getActiveCell()将返回不正确的范围(在我的测试中,它总是row = 1,column = 1)。
这是一个耻辱,一个问题意味着我无法升级我的一些床单: - (
答案 1 :(得分:0)
嗯,onEdit触发器确实存在一个特定的已知问题:
https://developers.google.com/apps-script/migration/sheets#onedit_triggers