Je prépare un formulaire Google pour les évaluations. J'y poserai une question à choix multiples et les options disponibles devront provenir d'une liste d'éléments, par exemple sur une feuille de calcul ou un document texte. J'ai compris que je pouvais créer une question en utilisant:
form.addMultipleChoiceItem()
.setTitle('Do you prefer cats or dogs?')
.setChoiceValues(['Cats','Dogs'])
.showOtherOption(true);
Cependant, comment puis-je faire en sorte que la liste de choix provienne d'un tableur Google?
Vous devriez pouvoir le faire avec quelque chose comme
// Change these three values to match your own spreadsheet
var OPTIONS_SPREADSHEET_ID = "0Avea1NXBTibYdEY4XzBvSk84MjB2RENiOFljSkVaY0E";
var OPTIONS_SHEET_NAME = "Sheet 1";
var OPTIONS_RANGE = "A1:A4"; // We have 4 options, listed in column A
// This returns a 2D array of the values of the range, e.g. [["A1value", "B1Value"], ["A2Value", "B2Value"], ["A3Value", "B3Value"]];
var options2DArr = SpreadsheetApp.openById(OPTIONS_SPREADSHEET_ID).getSheetByName(OPTIONS_SHEET_NAME).getRange(OPTIONS_RANGE).getValues();
var options = [];
for (var i = 0; i < options2DArr.length; i++) { // Now iterate through the 2D array and extract values from the first column only
options.Push(options2DArr[i][0]); // 0 is the index of the first column
}
form.addMultipleChoiceItem()
.setTitle('Do you prefer cats or dogs?')
.setChoiceValues(options) // <-- Uses the spreadsheet values as choice options
.showOtherOption(true);
Il existe un script pour cela, appelé formranger http://web.archive.org/web/20140302104243/http://youpd.org/formranger
Vous trouverez des instructions dans ce document: https://docs.google.com/document/d/1YvgrxeZJNb2CBpSra1j59Mh1bVpk4vBQYLOoyVjby7A/edit?hl=fr&forcehl=1
FormRanger permet aux utilisateurs de renseigner automatiquement les options dans toute question à choix multiple, à cases à cocher ou à liste déroulante dans un formulaire Google Form à partir de n’importe quelle colonne de la feuille de calcul jointe.
Il nécessite les autorisations suivantes: