-1

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

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

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

4

2 回答 2

2

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

e.response.getId();

其中“e”是传递给表单提交函数的对象。

于 2015-01-13T06:48:30.103 回答
0

很抱歉回答了这么老的查询,但谷歌把它作为我自己问题的答案(表单响应和电子表格行是如何相关的)。

给定表单 ID,可以使用 Google Apps Script Forms Service 获取所有响应,并为每个响应获取其 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/

于 2015-11-11T20:59:17.970 回答