除了使用Range.getRowIndex()
可以获得的行索引外,电子表格中的行是否有任何唯一标识符?如果是的话,这是什么API?我没有在Google文档中看到它。
我厌倦了依靠行索引,因为用户可能会手动交换或删除行,并进行比较...
我希望能够唯一地识别表单提交。
答案 0 :(得分:2)
您可以在行中设置唯一的表单响应ID ...
e.response.getId();
'e'是传递给表单提交功能的对象。
答案 1 :(得分:0)
很抱歉回答这么老的问题,但谷歌把它作为我自己问题的答案(如何与表单回复和电子表格行相关)。
根据表单ID,可以使用Google Apps脚本表单服务获取所有响应,并为每个响应获取其ID和时间戳,并使用电子表格服务将ID存储在行中并匹配时间戳:
var form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz');
var responses = form.getResponses();
for (var i = 0; i < responses.length; i++) {
var response = responses[i];
Logger.log(response.getId());
Logger.log(response.getTimestamp());
// use Spreadsheet API to get matching row and store ID
}
https://developers.google.com/apps-script/reference/forms/
https://developers.google.com/apps-script/reference/spreadsheet/