Googleフォームには回答者が送信後に回答を編集できるようにする設定があります
設定画面で「回答の編集を許可する」をオンにすると利用できるようになります
新規でフォームを作成した際のデフォルトではオフになっています
「設定 > 回答 > 回答の編集を許可する」の右端でオンオフを切り替えられます
オンにすると送信直後の確認画面に「回答を編集」リンクが表示されます
「回答を編集」をクリックしたらフォームの入力画面が開きます
回答を再送信するとその内容で前回の回答結果が上書きされます
スプレッドシートに書き出している場合も該当するレコードが上書きされます
回答の編集が許可されている限り
回答者はフォームを通じて自身の回答を更新できるため
回答受付を終了するまではデータが確定しない状態となります
途中経過では既存の回答も確定値ではなく
変更される可能性がある一時的な状態です
setAllowResponseEdits(true)を追加したものです
createFormAllowResponseEdits() を実行すると
「回答の編集を許可する」がオンになったフォームが作成されます
Code.gs
function createFormAllowResponseEdits() {
const formName = 'Favorite Color Survey';
const description = 'Please tell us your favorite color.';
const title = 'What is your favorite color?';
const color = ['Red', 'Blue', 'Green', 'Yellow'];
const form = FormApp.create(formName);
form.setDescription(description);
form.setAllowResponseEdits(true); // 回答の編集を許可する
const item = form.addMultipleChoiceItem();
item.setTitle(title)
.setChoiceValues(color)
.showOtherOption(true)
.setRequired(false);
form.setPublished(false);
Logger.log('Form Edit URL: ' + form.getEditUrl());
}
Reference
setAllowResponseEdits(enabled)
関連記事