使用 Google Apps 脚本从 Google 表单回复中提取回复者电子邮件

Extract Respondent Email from Google Forms Responses using Google Apps Script

我正在使用 Google Apps 脚本来处理来自 Google 表单的响应数据,该表单要求用户在表单开头证明用户名。用户名已较早提供给他们。 我现在正在尝试将给定的用户名与用于回复表单的电子邮件 ID 相匹配(setLimitOneResponsePerUser() 已设置为 true,因此所有用户都必须登录才能回复),在电子表格中使用值。

但我似乎无法从 Response.getRespondentEmail()(returns 空白)获取值,除非我将 Form.setCollectEmail() 设置为 true,我正在尝试以避免,因为这意味着他们每次都必须手动输入电子邮件 ID。

有没有办法提取用于创建回复的电子邮件 ID?

注意:我不能使用事件对象,因为脚本不会在 ResponseTrigger 上 运行,而是每天在给定时间 运行,并遍历所有提交了该表单的回复。

回答我自己的问题,以防其他人查看此线程。

所以事实证明目前没有一种方法可以使用 Google 脚本自动收集电子邮件地址,除非:

  1. Form.setCollectEmail() 设置为 true,在这种情况下,受访者每次都必须手动输入电子邮件 ID(并且可以伪造,因为不会与用于登录的实际帐户)

  1. 脚本在表单 ResponseTrigger 上运行,在这种情况下,关联的电子邮件 ID 将成为事件对象 e 的一部分。但是这种方法不能用于后期的响应分析。

不幸的是,这还没有在 Google Apps 脚本中实现,但让我们看看将来会发生什么。

希望这对偶然发现此主题的其他人有所帮助。