【发布时间】:2015-06-16 19:41:12
【问题描述】:
我正在创建一个单元格来标记此电子表格“上次更改”的时间。
我的代码如下:
function onEdit() {
var s = SpreadsheetApp.getActiveSheet();
var r = s.getActiveCell();
if( r.getColumn() == 2 ) { //checks the column
var row = r.getRow();
if( row == 3 || row == 4) {
var time = new Date();
time = Utilities.formatDate(time, "GMT-04:00", "MM/DD/yy, hh:mm:ss");
SpreadsheetApp.getActiveSheet().getRange('B24').setValue(time);
};
};
};
但是,当它更新它时,它会产生“06/167/15 03:35:50”。这是有道理的,因为当我上次更新它时,它是 2015 年 6 月 16 日下午 3:35:50。为什么日期是三位数,这是什么意思?
另外,我有一个单元格,它是所有数字的“汇总”,它汇总了电子表格中的所有数字。我正在使用这种方法来确定工作表上的任何数字是否已更改,因为如果更改了任何数字,则此“摘要”单元格也将更改。但是,如果我更改任何其他单元格,“摘要”单元格会更改(由于公式),但我的脚本不会更新时间。只有当我主动更改该单元格时,它似乎才会这样做,即。改变公式。有什么办法解决吗?
【问题讨论】:
标签: google-sheets