在此之前,我并不是特别精通 Google Sheet 脚本,只是在谷歌搜索方面相当不错,并且使东西对我有用。
如果我将文章保存在我的 RSS 阅读器中,我正在使用 IFTTT.com 自动附加 Google 表格。
根据 IFTTT 的工作原理,它会根据保存的文章的各种属性在工作表底部添加一行。
我正在为该行添加一个自动非易失性时间戳而挂断电话。
我尝试过使用下面的自动时间戳功能,当我在单元格中键入时该功能有效,但在附加工作表时无效。
function onEdit(event)
{
var timezone = "GMT-5";
var timestamp_format = "MM-dd-yyyy"; // Timestamp Format.
var updateColName = "Article Title";
var timeStampColName = "Date Discovered";
var sheet = event.source.getSheetByName('Sheet1'); //Name of the sheet where you want to run this script.
var actRng = event.source.getActiveRange();
var editColumn = actRng.getColumn();
var index = actRng.getRowIndex();
var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues();
var dateCol = headers[0].indexOf(timeStampColName);
var updateCol = headers[0].indexOf(updateColName); updateCol = updateCol+1;
if (dateCol > -1 && index > 1 && editColumn == updateCol) { // only timestamp if 'Last Updated' header exists, but not in the header row itself!
var cell = sheet.getRange(index, dateCol + 1);
var date = Utilities.formatDate(new Date(), timezone, timestamp_format);
cell.setValue(date);
}
}
IFTTT 允许您设置将哪些数据移植到哪一列,并为来自 Feedly 的数据提供特定的“成分”,您可以将其放入一列。
它们还允许静态文本和公式。
意识到这一点,我发现了以下自定义函数,这似乎有点工作。
function timestamp() {
return new Date()
}
这允许我添加一个函数来检查文章的标题是否有内容,如果为真,则添加时间戳。
=时间戳(间接(“E”&ROW()))
奇怪的是,当我今天重新加载工作表时(我昨天输入了公式),这个公式的第一行没有改变,工作表下面的一行也没有改变。
非常感谢提前。