LoginSignup
0
0

More than 5 years have passed since last update.

google form で簡単情報収集 情報を集めたあとは編集がすぐにできる状態にしよう

Last updated at Posted at 2018-05-19

まずはスクリプト編集しよう

この編集の作業でトリガーを設定して、
パーミッションを与えれば出来上がり。
以下のサイトが参考になるので、是非挑戦してみてください。
この他にいくつかのクリエイティブなことに挑戦してみよう。
海外の説明サイトが参考になると思います。すこしうまくいかなかったので以下のコードを参考にするといいですよ。
トリガーの場所が変更になっていたので公式ページのサポートも載せておきますね。

具体的な例1

具体的な例2

 具体的な例3

サンプルコードはこちらです。
この箇所を編集するというところにあなたのIDを打っていけばよいですね。

/*
 * Global Variables
 */

// Form URL
var formURL = 'https://docs.google.com/forms/d/このかしょを編集する/edit';
// Sheet name used as destination of the form responses
var sheetName = 'Form Responses 1';
/*
 * Name of the column to be used to hold the response edit URLs 
 * It should match exactly the header of the related column, 
 * otherwise it will do nothing.
 */
var columnName = 'Edit Url' ;
// Responses starting row
var startRow = 2;

function getEditResponseUrls(){
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName);
  var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues(); 
  var columnIndex = headers[0].indexOf(columnName);
  var data = sheet.getDataRange().getValues();
  var form = FormApp.openByUrl(formURL);
  for(var i = startRow-1; i < data.length; i++) {
    if(data[i][0] != '' && data[i][columnIndex] == '') {
      var timestamp = data[i][0];
      var formSubmitted = form.getResponses(timestamp);
      if(formSubmitted.length < 1) continue;
      var editResponseUrl = formSubmitted[0].getEditResponseUrl();
      sheet.getRange(i+1, columnIndex+1).setValue(editResponseUrl);
    }
  }
}

スクリプトにおけるまとめ

これを使うとRuby on Railsをやらずとしてもさまざまな情報を簡単に管理できるようになってくると思う。この調子で少しずつ情報を管理しながらとっても使いやすいものを設計していきたいと思う。
とにかく流れ的にはCRUDクラッド処理を意識すればいいわけだから簡単である。
UI設計はグーグルがある程度やってくれているのでとっても楽である

0
0
1

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
0
0