Eine Antwort auf das gesamte Formular. Form
können auf drei Arten verwendet werden: um auf die von einem Teilnehmer eingereichten Antworten zuzugreifen (siehe get
), um eine Antwort programmatisch an das Formular zu senden (siehe with
und submit()
) und um eine URL für das Formular zu generieren, in der die Felder mit den bereitgestellten Antworten vorab ausgefüllt werden. Form
können über eine Form
erstellt oder darauf zugegriffen werden.
// Open a form by ID and log the responses to each question. const form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz'); const formResponses = form.getResponses(); for (let i = 0; i < formResponses.length; i++) { const formResponse = formResponses[i]; const itemResponses = formResponse.getItemResponses(); for (let j = 0; j < itemResponses.length; j++) { const itemResponse = itemResponses[j]; Logger.log( 'Response #%s to the question "%s" was "%s"', (i + 1).toString(), itemResponse.getItem().getTitle(), itemResponse.getResponse(), ); } }
Methoden
Methode | Rückgabetyp | Kurzbeschreibung |
---|---|---|
get | String | Generiert eine URL, mit der eine bereits eingereichte Antwort bearbeitet werden kann. |
get | Item | Hiermit werden alle Artikelantworten in einer Formularantwort in der Reihenfolge abgerufen, in der die Artikel im Formular angezeigt werden. |
get | Item | Ruft die Artikelantwort ab, die in einer Formularantwort für ein bestimmtes Element enthalten ist. |
get | String | Ruft die ID der Formularantwort ab. |
get | Item | Hiermit werden alle Artikelantworten in einer Formularantwort in der Reihenfolge abgerufen, in der die Artikel im Formular angezeigt werden. |
get | String | Ruft die E-Mail-Adresse der Person ab, die eine Antwort gesendet hat, sofern die Einstellung Form.setCollectEmail(collect) aktiviert ist. |
get | Item | Ruft die Artikelantwort in dieser Formularantwort für ein bestimmtes Element ab. |
get | Date | Ruft den Zeitstempel für die Einreichung einer Formularantwort ab. |
submit() | Form | Die Antwort wird gesendet. |
to | String | Generiert eine URL für das Formular, in dem die Antworten basierend auf den Antworten in dieser Formularantwort vorausgefüllt werden. |
with | Form | Fügen Sie einer Formularantwort die Noten der angegebenen Artikelantwort hinzu. |
with | Form | Fügt der Formularantwort die angegebene Artikelantwort hinzu. |
Detaillierte Dokumentation
get Edit Response Url()
Generiert eine URL, mit der eine bereits eingereichte Antwort bearbeitet werden kann. Wenn die Einstellung Form.setAllowResponseEdits(enabled)
deaktiviert ist, führt der Link zu einer Seite, auf der erklärt wird, dass die Bearbeitung von Formularantworten deaktiviert ist. Jeder, der den Link aufruft, kann die Antwort bearbeiten. Wenn die Einstellung
aktiviert ist, benötigt er jedoch ein Konto mit Zugriff auf das Formular. Wenn die Einstellung Form.setRequireLogin(requireLogin)Form.setCollectEmail(collect)
aktiviert ist, wird im Formular die E-Mail-Adresse des Nutzers erfasst, der die Antwort bearbeitet hat, anstelle der E-Mail-Adresse des ursprünglichen Teilnehmers.
Für eine Formularantwort, die vom Script erstellt, aber noch nicht gesendet wurde, gibt diese Methode null
zurück.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets the first form response. const formResponse = form.getResponses()[0]; // Gets the edit URL for the first form response and logs it to the console. const editUrl = formResponse.getEditResponseUrl(); console.log(editUrl);
Rückflug
String
: Die URL, über die eine eingereichte Antwort geändert werden kann.
Autorisierung
Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
get Gradable Item Responses()
Hiermit werden alle Artikelantworten in einer Formularantwort in der Reihenfolge abgerufen, in der die Artikel im Formular angezeigt werden. Diese Methode funktioniert ähnlich wie get
. Um jedoch eine fehlende Antwort benoten zu können, wird weiterhin Item
zurückgegeben, wenn die entsprechende Item
benotet werden kann (d. h. einen Punktewert hat), auch wenn es keine tatsächliche Antwort gibt. Wenn Item
jedoch nicht benotet werden kann, wird dieser Artikel von dieser Methode aus dem zurückgegebenen Array ausgeschlossen.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets an array of the form's responses. const formResponses = form.getResponses(); // Gets the item responses contained in each form response. for (const formResponse of formResponses) { const gradableItemsResponses = formResponse.getGradableItemResponses(); // Logs the title and score for each item response to the console. for (const gradableItemsResponse of gradableItemsResponses) { console.log(`${gradableItemsResponse.getItem().getTitle()} score ${gradableItemsResponse.getScore()}`); } }
Rückflug
Item
: Ein Array von Antworten auf jedes Frageelement im Formular, für das die Person eine Punktzahl erhalten kann.
Autorisierung
Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
get Gradable Response For Item(item)
Ruft die Artikelantwort ab, die in einer Formularantwort für ein bestimmtes Element enthalten ist. Diese Methode funktioniert ähnlich wie get
. Um jedoch eine fehlende Antwort benoten zu können, wird weiterhin Item
zurückgegeben, wenn die entsprechende Item
benotet werden kann (d. h. einen Punktewert hat), auch wenn es keine tatsächliche Antwort gibt. Wenn Item
jedoch nicht benotet werden kann, gibt diese Methode null
zurück.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets an array of the form's responses. const formResponses = form.getResponses(); // Gets the item responses contained in a form response. for (const formResponse of formResponses) { const formItemResponses = formResponse.getGradableItemResponses(); // Logs the title and score for responses to the first item of the form. const itemResponse = formResponse.getGradableResponseForItem( formItemResponses[0].getItem(), ); console.log( `${itemResponse.getItem().getTitle()} score ${itemResponse.getScore()}`, ); }
Parameter
Name | Typ | Beschreibung |
---|---|---|
item | Item |
Rückflug
Item
: Die Antwort für einen bestimmten Artikel oder null
, wenn keine vorhanden ist und der Artikel nicht benotet wurde.
get Id()
Ruft die ID der Formularantwort ab. Diese Methode gibt null
zurück, wenn die Formularantwort nicht gesendet wurde.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets an array of the form's responses. const formResponses = form.getResponses(); // Loops through the form responses and logs the ID for each form response to // the console. for (const formResponse of formResponses) { console.log(`Response ID: ${formResponse.getId()}`); }
Rückflug
String
: Die ID der Formularantwort oder null
, wenn die Formularantwort noch nicht gesendet wurde.
Autorisierung
Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
get Item Responses()
Hiermit werden alle Artikelantworten in einer Formularantwort in der Reihenfolge abgerufen, in der die Artikel im Formular angezeigt werden. Wenn die Formularantwort keine Antwort für eine bestimmte Text
, Date
, Time
oder Paragraph
enthält, ist die Antwort für die zurückgegebene Item
ein leerer String. Wenn in der Formularantwort keine Antwort für einen anderen Artikeltyp enthalten ist, schließt diese Methode dieses Element aus dem zurückgegebenen Array aus.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets the responses to the form. const formResponses = form.getResponses(); // Iterates over the responses. for (const formResponse of formResponses) { // Gets the item responses from each form response. const itemResponses = formResponse.getItemResponses(); // Iterates over the item responses. for (const itemResponse of itemResponses) { // Logs the items' questions and responses to the console. console.log( `Response to the question '${itemResponse.getItem().getTitle()}' was '${itemResponse.getResponse()}'`); } }
Rückflug
Item
: Ein Array von Antworten auf alle Fragen im Formular, für die der Teilnehmer eine Antwort gegeben hat.
Autorisierung
Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
get Respondent Email()
Ruft die E-Mail-Adresse der Person ab, die eine Antwort gesendet hat, sofern die Einstellung Form.setCollectEmail(collect)
aktiviert ist.
Für eine Formularantwort, die vom Script erstellt, aber noch nicht gesendet wurde, gibt diese Methode null
zurück.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets an array of the form's responses. const formResponses = form.getResponses(); // Loops through the responses and logs each respondent's email to the console. // To collect respondent emails, ensure that Form.setCollectEmail(collect) is // set to true. for (const formResponse of formResponses) { console.log(`Respondent Email: ${formResponse.getRespondentEmail()}`); }
Rückflug
String
: Die E-Mail-Adresse der Person, die diese Antwort gesendet hat, sofern verfügbar, oder null
, wenn das Script diese Antwort erstellt, aber noch nicht gesendet hat.
Autorisierung
Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
get Response For Item(item)
Ruft die Artikelantwort in dieser Formularantwort für ein bestimmtes Element ab.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets the first item on the form. const item = form.getItems()[0]; // Gets an array of the form's responses. const formResponses = form.getResponses(); // Loops through the responses and logs each response to the first item to the // console. for (const formResponse of formResponses) { const itemResponse = formResponse.getResponseForItem(item); console.log(itemResponse.getResponse()); }
Parameter
Name | Typ | Beschreibung |
---|---|---|
item | Item |
Rückflug
Item
: Die Antwort für einen bestimmten Artikel oder null
, wenn keine vorhanden ist.
get Timestamp()
Ruft den Zeitstempel für die Einreichung einer Formularantwort ab.
Für eine Formularantwort, die vom Script erstellt, aber noch nicht gesendet wurde, gibt diese Methode null
zurück.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets an array of the form's responses. const formResponses = form.getResponses(); // Loops through the responses and logs the timestamp of each response to the // console. for (const formResponse of formResponses) { console.log(`Timestamp: ${formResponse.getTimestamp()}`); }
Rückflug
Date
: Der Zeitstempel, zu dem diese Antwort gesendet wurde, oder null
, wenn das Script diese Antwort erstellt, aber noch nicht gesendet hat.
Autorisierung
Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
submit()
Die Antwort wird gesendet. Löst eine Scripting-Ausnahme aus, wenn die Antwort bereits gesendet wurde.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Creates an empty response for the form. const formResponse = form.createResponse(); // Submits an empty response. formResponse.submit();
Rückflug
Form
: Eine neu erstellte Antwort, die im Antwortspeicher des Formulars gespeichert wird.
Autorisierung
Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
to Prefilled Url()
Generiert eine URL für das Formular, in dem die Antworten basierend auf den Antworten in dieser Formularantwort vorausgefüllt werden.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets the first form response. const formResponse = form.getResponses()[0]; // Generates and logs the URL of a pre-filled form response based on the answers // of the first form response. const prefilledUrl = formResponse.toPrefilledUrl(); console.log(prefilledUrl);
Rückflug
String
: Die URL für ein Formular mit vorausgefüllten Antworten.
Autorisierung
Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
with Item Grade(gradedResponse)
Fügen Sie einer Formularantwort die Noten der angegebenen Artikelantwort hinzu. Diese Methode gilt nur für bereits eingereichte Formularantworten und wirkt sich nur auf gespeicherte Noten aus, nachdem sie eingereicht wurden. Mit dieser Methode werden auch nur die Noten der Artikelantwort aktualisiert. Die tatsächliche Antwort wird nicht geändert, da sie bereits gesendet wurde. Wenn diese Methode mehrmals für denselben Artikel aufgerufen wird, wird nur die letzte Note beibehalten. Wenn die „ItemResponse“ keine Noten enthält, werden mit dieser Methode die Noten für das Element entfernt.
// Programmatically award partial credit for a given response const form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz'); const formResponses = form.getResponses(); const formItems = form.getItems(); for (const formResponse of formResponses) { for (const item of formItems) { const points = item.asMultipleChoiceItem().getPoints(); const itemResponse = formResponse.getGradableResponseForItem(item); Logger.log('Award half credit for answers containing the word "Kennedy"'); const answer = itemResponse.getResponse(); if (answer?.includes('Kennedy')) { itemResponse.setScore(points / 2); formResponse.withItemGrade(itemResponse); } } } form.submitGrades(formResponses);
Parameter
Name | Typ | Beschreibung |
---|---|---|
graded | Item |
Rückflug
Form
– dieses Form
für die Verkettung
Autorisierung
Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
with Item Response(response)
Fügt der Formularantwort die angegebene Artikelantwort hinzu. Diese Methode gilt nur für Formularantworten, die vom Script erstellt, aber noch nicht gesendet wurden. Gespeicherte Antworten sind davon nicht betroffen. Wenn diese Methode mehrmals für denselben Artikel aufgerufen wird, wird nur die letzte Artikelantwort beibehalten.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Creates a response for the form. const formResponse = form.createResponse(); // Appends a checkbox item to the form. const item = form.addCheckboxItem(); // Sets the title of the item to 'Which items are ice cream flavors?' item.setTitle('Which items are ice cream flavors?'); // Sets choices for the item. item.setChoices([ item.createChoice('Vanilla'), item.createChoice('Strawberry'), item.createChoice('Brick'), ]); // Creates a response for the item. const response = item.createResponse(['Vanilla', 'Strawberry']); // Adds the item response to the form response. formResponse.withItemResponse(response); // Submits the form response. formResponse.submit();
Parameter
Name | Typ | Beschreibung |
---|---|---|
response | Item |
Rückflug
Form
– Dieses Form
für die Verkettung.
Autorisierung
Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms