フォーム内の 1 つの質問項目に対する回答。アイテムの回答は FormResponse
からアクセスでき、回答者に質問に回答を求める任意の Item
から作成できます。
// Open a form by ID and log the responses to each question. var form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz'); var formResponses = form.getResponses(); for (var i = 0; i < formResponses.length; i++) { var formResponse = formResponses[i]; var itemResponses = formResponse.getItemResponses(); for (var j = 0; j < itemResponses.length; j++) { var itemResponse = itemResponses[j]; Logger.log('Response #%s to the question "%s" was "%s"', (i + 1).toString(), itemResponse.getItem().getTitle(), itemResponse.getResponse()); } }
Methods
メソッド | 戻り値の型 | 概要 |
---|---|---|
getFeedback() | Object | 回答者が送信した回答に対して与えられたフィードバックを取得します。 |
getItem() | Item | このレスポンスが回答する質問アイテムを取得します。 |
getResponse() | Object | 回答者が送信した回答を取得します。 |
getScore() | Object | 回答者が送信した回答のスコアを取得します。 |
setFeedback(feedback) | ItemResponse | 回答者が送信した回答に対して表示されるフィードバックを設定します。 |
setScore(score) | ItemResponse | 回答者が送信した回答のスコアを設定します。 |
詳細なドキュメント
getFeedback()
回答者が送信した回答に対して与えられたフィードバックを取得します。
リターン
Object
- 質問アイテムの QuizFeedback
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
getItem()
getResponse()
回答者が送信した回答を取得します。ほとんどの種類の質問項目では、String
が返されます。
CheckboxItem
の質問の場合、回答者の選択肢を含む String[]
配列を返します。配列内の文字列の順序は異なる場合があります。
GridItem
の質問の場合、String[]
配列が返されます。この配列では、インデックス n
の回答がグリッドの n + 1
行の質問に対応しています。グリッド内の回答者が質問に回答しなかった場合、その回答は ''
として返されます。
CheckboxGridItem
の質問の場合、行インデックス n
の回答はチェックボックス グリッドの n + 1
行の質問に対応する String[][]
配列が返されます。グリッド内の回答者が回答しなかった場合、その回答は ''
として返されます。
リターン
Object
- 質問項目に対する回答の String
、String[]
、String[][]
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
getScore()
回答者が送信した回答のスコアを取得します。
リターン
Object
- 質問項目のスコアを表す Double
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
setFeedback(feedback)
回答者が送信した回答に対して表示されるフィードバックを設定します。
このメソッドでは、更新された FormResponse で Form.submitGrades(responses)
が呼び出されるまで、実際にフィードバックがフォームに保存されません。例として setScore()
をご覧ください。
パラメータ
名前 | 型 | 説明 |
---|---|---|
feedback | Object |
リターン
ItemResponse
- チェーン用の ItemResponse
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
setScore(score)
回答者が送信した回答のスコアを設定します。null 値を指定すると、既存のスコアが消去されます。
このメソッドでは、更新された FormResponse で Form.submitGrades(responses)
が呼び出されるまで、実際にスコアがフォームに保存されません。
// For a multiple choice question with options: "Always true", "Sometimes true", and "Never", // award half credit for responses that answered "Sometimes true". var formResponses = FormApp.getActiveForm().getResponses(); // Go through each form response for (var i = 0; i < formResponses.length; i++) { var response = formResponses[i]; var items = FormApp.getActiveForm().getItems(); // Assume it's the first item var item = items[0]; var itemResponse = response.getGradableResponseForItem(item); // Give half credit for "Sometimes true". if (itemResponse != null && itemResponse.getResponse() == 'Sometimes true') { var points = item.asMultipleChoiceItem().getPoints(); itemResponse.setScore(points * .5); // This saves the grade, but does not submit to Forms yet. response.withItemGrade(itemResponse); } } // Grades are actually submitted to Forms here. FormApp.getActiveForm().submitGrades(formResponses);
パラメータ
名前 | 型 | 説明 |
---|---|---|
score | Object |
リターン
ItemResponse
- チェーン用の ItemResponse
承認
この方法を使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms