我有一个脚本记录电子表格中所有更改的日志:
function onEdit() {
var timestamp = new Date();
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var cell = sheet.getActiveCell();
var user = Session.getActiveUser();
var columnLabel = sheet.getRange(1, cell.getColumn()).getValue();
var changelogSheet = ss.getSheetByName("Changelog");
changelogSheet.appendRow([timestamp, cell.getA1Notation(), columnLabel, cell.getValue(), user.getEmail()]);
}
每次在“Sheet1”上进行编辑时,此代码都会在“更改日志”表单中精美地创建一行数据。它会告诉您日期和时间,编辑它的单元格,编辑内容以及编辑它的用户。
我的问题是“Sheet1”链接到允许用户编辑其回复的Google表单。当用户确实在Google表单上编辑他们的回复时,编辑没有在我的脚本上注册,也没有日志记录。
我假设我的脚本只记录工作表本身的物理编辑。
是否有办法(可能使用FormApp)执行类似的代码来记录Google表单上的每个编辑?
我非常感谢你的帮助。
答案 0 :(得分:1)
您应该创建一个新的onFormSubmit触发器,该触发器将包含类似的逻辑,并在提交表单回复时在Google表格中创建一个新行。