4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Googleフォームの回答スプレッドシートにUUIDを付与する

Posted at

Googleフォームの回答をスプレッドシートに記録するときに、回答一つひとつにUUIDを付与する方法です。

次の手順で設定していきます。

  1. Googleフォームを作る
  2. 回答用スプレッドシートを作る
  3. 回答用スプレッドシートのApps ScriptでUUIDを付与するスクリプトを作成する
  4. 回答用スプレッドシートのトリガーを設定する

Googleフォームを作る

いつものようにGoogleフォームを作ります。今回は承認アプリをイメージして、申請内容と承認者のメールアドレスを記入します。

image.png

回答用スプレッドシートを作る

Googleフォームの回答タブで、新規でスプレッドシートを作ります。説明を簡単にするために新規にしていますが、既存のスプレッドシートを選択しても構いません。

image.png

スプレッドシートを作成したら、UUIDを記録するため、最後の列に「ID」列を追加します。

image.png

回答用スプレッドシートのApps ScriptでUUIDを付与するスクリプトを作成する

上記で作成した回答用スプレッドシートの上部メニュー「拡張機能」から「Apps Script」を選択して、スクリプトエディターを起動します。

以下のコードを記入して、保存します。

function onFormSubmit(e) {
  const range = e.range;
  const sheet = range.getSheet();
  sheet.getRange(range.getRow(), range.getLastColumn() + 1).setValue(Utilities.getUuid());
}

Googleスプレッドシートのイベントのうち、フォーム送信のイベントを受け取り、追加した行の末尾にUUIDを付与するスクリプトです。

回答用スプレッドシートのトリガーを設定する

スクリプトエディターにトリガーを設定します。

image.png

  • 実行する関数を選択
    • onFormSubmit
  • 実行するデプロイを選択
    • HEAD
  • イベントのソースを選択
    • スプレッドシートから
  • イベントの種類を選択
    • フォーム送信時
  • エラー通知設定
    • 今すぐ通知を受け取る

これで設定は完了です。Googleフォームで入力した情報が回答のスプレッドシートに表示されるとき、最後のID列にUUIDが記載されることを確認してください。

4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?