次のような方法ではどうでしょうか。
トリガーにより起動するスクリプトです。
(追記)
フォームの確認メッセージに受付番号を表示するバージョンです。
こちらも、受付番号は、前回の回答の送信があったときに
次の回答者の番号が確認メッセージに設定されますので
最初の回答者向けにフォームのデフォルトの確認メッセージを
10001番で設定しておきます。
JavaScript
1// 回答が蓄積されるスプレッドシートに
2// 「フォーム送信時」のトリガーを設定し保存する
3// 回答が蓄積されるシート(フォームの回答1など)の
4// タイムスタンプの左に列を挿入し受付番号の列とする。
5function onFormSubmit(e) {
6 if (!e) {
7 console.log('エディタから起動できません。フォームから回答してください。');
8 return;
9 }
10 const range = e.range;
11 const sheet = range.getSheet();
12 const row = range.getRow();
13 //記録された回答の行番号から受付番号を生成し、A列に記録
14 let numberReceipt = 9999 + row;
15 sheet.getRange(row, 1).setValue(numberReceipt);
16 //セクションの説明を次の受付番号に変更
17 const nextNumber = numberReceipt + 1;
18 const form = FormApp.openByUrl(sheet.getFormUrl());
19 form.setConfirmationMessage(`受付番号は、${nextNumber} です。\n番号を控えておき、問い合わせの際はこの番号をお知らせください。`);
20}
(以下は当初の回答)
全ての回答に答えてから「次へ」をクリックすると
受付番号を確認してから「送信」するようになります。
受付番号は、前回の回答の送信があったときに
次の回答者の番号がフォームに設定されますので
最初の回答者用にフォームの作成時に10001を設定しておきます。
JavaScript
1// 回答をスプレッドシートに送信されるようにしておく
2// 回答が蓄積されるスプレッドシートに
3// 「フォーム送信時」のトリガーを設定し保存する
4// 回答が蓄積されるシート(フォームの回答1など)の
5// タイムスタンプの左に列を挿入し受付番号の列とする
6// フォームは質問の最後に質問のないセクションを設定し。
7// そのタイトルを受付番号としておく。
8function onFormSubmit(e) {
9 if (!e) {
10 console.log('エディタから起動できません。フォームから回答してください。');
11 return;
12 }
13 const range = e.range;
14 const sheet = range.getSheet();
15 const row = range.getRow();
16 //記録された回答の行番号から受付番号を生成し、A列に記録
17 let numberReceipt = 9999 + row;
18 sheet.getRange(row, 1).setValue(numberReceipt);
19 //セクションの説明を次の受付番号に変更
20 const nextNumber = numberReceipt + 1;
21 const form = FormApp.openByUrl(sheet.getFormUrl());
22 const items = form.getItems();
23 for (const item of items) {
24 if (item.getType() == FormApp.ItemType.PAGE_BREAK
25 && item.getTitle() == '受付番号'
26 ) {
27 item.asPageBreakItem().setHelpText(`受付番号は、${nextNumber} です。\n番号を控えておき、問い合わせの際はこの番号をお知らせください。`);
28 }
29 }
30}
(追記分の画像)
確認メッセージは次のように表示されます。
(当初の回答の画像)
スプレッドシートは次のようになります。
フォームの回答の最後は次のような表示になります。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/11/06 08:42 編集
2023/11/06 10:44
2023/11/06 20:01
2023/11/08 01:34
2023/12/05 04:12
2024/01/31 13:19
2024/02/02 17:03 編集