You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Google Apps Script(GAS)配置Google表单测验及响应设置

解决Google Apps Script表单测验配置错误的正确脚本

错误原因

你遇到的setMissedQuestions is not a function错误,是因为setMissedQuestions并非Form对象的直接方法,而是属于表单的测验配置对象,必须通过Form.setQuizSettings()获取配置后再调用相关方法。

正确脚本示例

假设你已经通过电子表格创建了表单(可替换为你实际的表单获取逻辑),以下是满足所有需求的完整代码:

function configureFormAsQuiz() {
  // 替换为你的表单ID,或使用已有表单获取方式
  const formId = "你的表单ID";
  const form = FormApp.openById(formId);

  // 1. 将表单设置为测验模式
  form.setIsQuiz(true);

  // 2. 配置测验结果显示选项
  const quizSettings = form.getQuizSettings();
  quizSettings.setScoreDisplayType(FormApp.ScoreDisplayType.IMMEDIATE) // 提交后立即显示结果
              .setShowCorrectAnswers(true) // 显示正确答案
              .setShowMissedQuestions(true) // 显示未答问题
              .setShowScores(true); // 显示分值

  // 3. 开启收集受访者邮箱地址
  form.setCollectEmail(true);

  // 4. 设置表单接受响应(按需开启)
  form.setAcceptingResponses(true);

  Logger.log("表单测验配置已完成");
}

关键说明

  • 所有测验相关设置(显示未答问题、正确答案、分值)都需要通过form.getQuizSettings()获取配置对象后调用对应方法,不能直接链式调用在Form实例上。
  • setScoreDisplayType(FormApp.ScoreDisplayType.IMMEDIATE)实现提交后立即显示结果的需求。
  • setCollectEmail(true)开启收集邮箱地址的功能。

内容的提问来源于stack exchange,提问作者Chi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 11:34:53