Skip to content

428lab/Ideason_template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

アイデアソン実施テンプレート

このテンプレートは、アイデアソンイベントでの投票・集計・結果発表を自動化するGoogle Apps Scriptです。

📋 システム概要

  • Google Forms: 参加者による登壇者評価アンケート
  • Google Spreadsheet: チーム情報管理・回答データ収集・集計結果出力
  • Google Slides: 結果発表用プレゼンテーション自動生成
  • Google Apps Script: 上記3つを連携させる自動化スクリプト

🛠️ 事前準備

1. Googleファイルの作成・準備

📊 Google Spreadsheet の準備

  1. 新しいスプレッドシートを作成
  2. 「Master」シートを作成し、以下の形式でデータを入力:
A列(チーム名) | B列(登壇タイトル) | C列(評価項目)
TeamA          | 革新的アプリ         | 技術力
TeamB          | 便利ツール          | アイデア力
TeamC          | 新サービス          | 実現可能性
               |                   | プレゼン力
               |                   | 独創性

📝 Google Forms の準備

  1. 新しいGoogle Formsを作成
  2. フォームの「回答」タブ → 「スプレッドシートにリンク」をクリック
  3. 上記で作成したスプレッドシートを選択して連携
  4. 自動生成されたシート名(通常「フォームの回答 1」など)を 「Result」 に変更

🎨 Google Slides の準備(オプション)

  • 既存のプレゼンテーションを使用する場合は事前に作成
  • 新規作成する場合は不要(自動で作成されます)

2. Google Apps Script の設定

プロジェクト作成

  1. Google Apps Script にアクセス
  2. 新しいプロジェクトを作成
  3. src/app.gs のコードをコピー&ペースト

ファイルID設定

コード内の以下の箇所を実際のファイルIDに変更:

const FORM_ID = 'YOUR_GOOGLE_FORM_ID_HERE';           // FormsのURL内のID
const SPREADSHEET_ID = 'YOUR_SPREADSHEET_ID_HERE';    // SpreadsheetのURL内のID  
const PRESENTATION_ID = 'YOUR_PRESENTATION_ID_HERE';  // SlidesのURL内のID(省略可)

📌 ファイルIDの取得方法

  • URL例: https://docs.google.com/spreadsheets/d/[ここがID]/edit
  • /d//edit の間の文字列がファイルIDです

権限設定

  1. 初回実行時にGoogle Drive、Forms、Sheets、Slidesへのアクセス許可を求められます
  2. 「許可」をクリックして認証を完了してください

3. テスト実行

事前に各関数をテスト実行して動作確認:

  1. updateForm() - フォームが正しく更新されるか確認
  2. aggregateSurveyResults() - 集計が正しく動作するか確認(テストデータで)
  3. createResultPresentation() - スライドが正しく生成されるか確認

🎯 イベント当日の手順

イベント前(発表チーム確定後)

ステップ1: マスターデータ更新

  1. Spreadsheetの「Master」シートを開く
  2. 登壇チーム情報を最新に更新:
    • A列: チーム名
    • B列: 登壇タイトル
    • C列: 評価項目(全チーム共通)

ステップ2: アンケートフォーム更新

  1. Google Apps Script エディタを開く
  2. updateForm() 関数を実行
  3. 実行ログで「✅ フォームの更新が完了しました」を確認
  4. 生成されたフォームURLを参加者に共有

発表・投票フェーズ

ステップ3: 投票実施

  1. 各チームの発表後、参加者にアンケートフォームで投票してもらう
  2. 回答データは自動的にSpreadsheetの「Result」シートに蓄積される

ステップ4: 中間確認(オプション)

  • 必要に応じて aggregateSurveyResults() を実行して中間集計を確認

結果発表フェーズ

ステップ5: 最終集計&スライド生成

  1. 全ての投票が完了したら createResultPresentation() 関数を実行
  2. 実行ログで以下を確認:
    • 「✅ 集計結果を出力しました」
    • 「✅ 結果発表スライドを作成しました」
    • 生成されたスライドのURL

ステップ6: 結果発表

  1. 生成されたGoogle Slidesを開く
  2. プレゼンテーションモードで結果発表を実施

📊 生成される内容

集計結果(Spreadsheetの「集計結果」シート)

  • チーム名
  • 全体合計ポイント
  • 自チーム除外合計ポイント
  • 回答者数(全体)
  • 回答者数(自チーム除外)

結果発表スライド

  1. タイトルスライド - イベント結果の概要
  2. 個別順位発表 - 3位→2位→1位の順(メダル付き)
  3. チーム詳細スライド - 各チームの獲得ポイントと登壇タイトル
  4. 全チーム結果一覧 - 表形式での全結果表示
  5. エンディングスライド - 感謝メッセージ

⚠️ 注意事項

  • 実行順序: 必ず updateForm() → 投票実施 → createResultPresentation() の順で実行
  • データ形式: Masterシートのデータ形式を正確に守ってください
  • 権限: すべてのファイルが同じGoogleアカウントで作成・アクセス可能であることを確認
  • バックアップ: 重要なデータは事前にバックアップを取得することを推奨

🔧 カスタマイズ

  • 評価スケール: コード内の ['1 (普通)', '2', '3 (良い)'] を変更
  • スライドデザイン: createResultPresentation() 関数内の色やフォントサイズを調整
  • 集計ロジック: 自チーム投票の除外ルールなどを変更可能

📞 トラブルシューティング

よくあるエラー

  • 「Masterシートが見つかりません」: シート名を「Master」に確認
  • 「回答データがありません」: フォームの回答先設定を確認
  • 「権限がありません」: ファイルIDと権限設定を再確認

デバッグ方法

  • Google Apps Script エディタの実行ログでエラー詳細を確認
  • console.log の出力でデータの流れを追跡

About

アイデアソンを簡単に行うためのテンプレートプロジェクト

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published