web-dev-qa-db-ja.com

フォームに一意のIDを表示する(送信する前に)

一意のIDを表示する匿名フォーム(名前、電子メールなどなし)が必要です。そのため、ユーザーがそのIDを公開することを決めた場合、スプレッドシートで自分の回答を見つけることができます。 IDは、送信後にフォームまたは「ありがとう」メッセージに表示できます。前述のように-電子メールはオプションではありません。私は同様の投稿を知っていますが、この特定の問題については答えが見つかりませんでした。

3
Mr Gray

送信前または送信中にGoogleフォームを操作することはできません

代替案

Google Apps Script HTML Service を使用して、フォームの送信後に表示される「ありがとう」メッセージページを設計できます(IDに続いて、送信者がこのIDをコピーするための明示的なメッセージが続きます)問題を処理するアプリを作成します。
しかし、あなたは 一意のIDを作成する から始めることができます。

1
marikamitsos

Google Formsは、応答が送信されると、送信された各応答に一意のIDを自動的に割り当てます。このIDは、応答送信確認ページに表示される編集応答URLの一部です。

別の方法として、オプションの質問を追加して、回答者が独自のトラッキングコードを作成できるようにします。色やデザート名などのようなものを書くことを提案できます。

回答者が回答を編集できるようにするオプションを有効にするには、 フォームを回答者に送信

既に送信した回答を編集できるかどうかを選択できます。

  1. Google Forms でフォームを開きます。
  2. 右上にある[設定] Settings
  3. [送信後に編集]の横にあるチェックボックスをオンにします。
  4. 保存をクリックします。
0
Rubén

感謝ページでユーザーに一意のIDを与えることはできませんが、SMSまたはメールで一意のIDを与えることができます。 GoogleのonFormSubmit関数を使用して、フォーム送信者に一意のIDを与えるのは非常に簡単です。

function onFormSubmit(e)
{
  var sheet = SpreadsheetApp.getActiveSheet();
  var row =  SpreadsheetApp.getActiveSheet().getLastRow();
  var unique_id=F+row;//output F1, F2...

  sheet.getRange(row,21).getCell(1,1).setValue(unique_id);
  //save in any coloum

  var str1 = "SMS Server api link sender id key and msgs..";
  var response1 = UrlFetchApp.fetch(str1); Logger.log(response1.getContentText());
}
0
Gaurav