Google App脚本>电子表格>得到行ID?

时间:2015-01-13 02:01:34

标签: google-apps-script google-sheets google-sheets-api google-form

除了使用Range.getRowIndex()可以获得的行索引外,电子表格中的行是否有任何唯一标识符?如果是的话,这是什么API?我没有在Google文档中看到它。

我厌倦了依靠行索引,因为用户可能会手动交换或删除行,并进行比较...

我希望能够唯一地识别表单提交。

2 个答案:

答案 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/