Google App Script>电子表格>获取行ID?

问题描述 投票:-1回答:2

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

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

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

google-apps-script google-sheets google-sheets-api google-form
2个回答
2
投票

您可以在行中设置唯一的表单响应ID ...

e.response.getId();

'e'是传递给表单提交功能的对象。


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/

© www.soinside.com 2019 - 2024. All rights reserved.