【发布时间】:2018-04-12 18:36:43
【问题描述】:
我一直在尝试捕获每个任务状态更改的时间戳。任务在行中被称为任务 1、任务 2 等,它们的状态在列 A(任务名称)之后的列 B 中提及。共享电子表格的用户可以修改任务状态。任务有 5 种状态:P、Q、R、S、T,可以按任何顺序完成(没有一个状态在另一个之后的确定顺序)。一旦有人修改状态,我想捕获时间戳并在下一列中捕获状态,以便状态和时间戳的所有更改都记录在连续列中作为状态 1(P/Q/R/S /T) & 时间戳。对任务状态的所有更改将记录在相应的列中。 我已经想出了使用此代码捕获状态变化的方法:
function onEdit() {
var s = SpreadsheetApp.getActiveSheet();
if( s.getName() == "Sheet1" ) {
var r = s.getActiveCell();
if( r.getColumn() == 2 ) {
var nextCell = r.offset(0,2);
if((nextCell.getValue() == "" && r.value != "")) {
nextCell.setValue(new Date());
} else if(nextCell.getValue() != "" && r.value == "") {
nextCell.setValue("");
}
}
}
}
这是我工作表的链接:https://docs.google.com/spreadsheets/d/1kQzxu6i5uPYUVtFfMz9sKk6FiRKfiqzB92unBap9rF8/edit?usp=sharing
我们将不胜感激。
【问题讨论】:
-
您的代码似乎没有尝试解决您的问题。事实上,您的代码看起来与您的previous question 几乎完全相同。如果您尝试解决自己的问题并仅在遇到问题时提出问题,我们将不胜感激。我们的目标是,在某些时候,您的经验将产生回答您自己问题的能力,这需要您付出一点努力。
标签: google-apps-script google-sheets timestamp