AIとGASで実現!Google Classroomの課題集計を劇的に効率化する方法

AI関連
スポンサーリンク

みなさん、こんにちは!

三島笑会では、今年度高校現場でIT人材育成に携わっています。
その活動の中で、生徒たちの制作物を各チームが相互評価し、その結果を集計する作業が発生しました。

具体的には、

  • 生徒一人ひとりのスプレッドシートを開いて数値を集計し、個別のコメントをチームごとに整理する

といった作業です。

この手作業を自動化できないかなー

スプレッドシートならGASを活用してできますよ!

この記事では、プログラミングの知識が一切なくても、話題のAIとGoogleの無料機能「GAS(Google Apps Script)」を活用し、数百人分のデータ集計・整理を劇的に効率化させる具体的な手順を、初心者にもわかりやすくご紹介します。

デジタル化の土台作り:必要なツールとゴール設定

でも自動化するにはプログラミングの知識が必要ですよね?

AIにプログラムを作らせれば大丈夫です!

まず、この自動化を実現するために必要なツールと、今回の作業のゴールを確認しましょう。

「コード」と聞くと難しく感じるかもしれませんが、ご心配は無用です。

私たちはAIにコード作成をすべて任せます

重要なのは、「AIに何をさせるか」を明確に伝えることです。

スポンサーリンク

必要なツール

ツール用途
Google Classroom課題の配布・回収
Google スプレッドシート集計用マスターファイルとして使用
AIツール(ChatGPT, Geminiなど)GASコードの作成を依頼

実践編:自動化を実現する「AIへの指示書」とコードの準備

この自動集計で最も重要なのは、AIに作成を依頼する「具体的な要件」を明確に定義することです。

今回の複雑な集計・整理を依頼するための、そのまま使える指示文(プロンプト)を用意しました。

【最重要】AIに作成を依頼する「具体的な要件」の定義

まずは、何を自動化したいのかを整理します。

集計したいデータ出力形式
数値集計:生徒シートのB2:E13の数値3つのシート(合計・件数・平均)に、同じセル位置(B2:E13)に出力。
条件:数値集計シートには、元のシート1ヘッダー・ラベルをコピーする。チーム別(Aチーム〜Lチーム)の12個の新しいシートを作成。
コメント整理:生徒シートのF2:F13のコメント条件:コメントが空欄の生徒は無視し、コメントとファイル名(生徒名)をセットで出力する(B1から縦)。
スポンサーリンク

AIへの具体的な指示文例(このままコピペOK!)

この指示文をAIツールに入力し、コードを生成してもらいます。

私はGoogle Classroomで配布したスプレッドシートの集計をしたいです。以下の要件を満たすGoogle Apps Script (GAS) のコードを作成してください。

【処理の前提】
1.  対象ファイルはすべてGoogle Driveの一つのフォルダに入っています。
2.  集計マスターシート内でこのGASを実行します。
3.  生徒の入力シート名はすべて「シート1」です。

【要件 1: 数値の集計・出力】
* 生徒シートの`B2:E13`セルの数値を集計します。
* マスターシートに「合計」「件数」「平均」の3つのシートを作成し、集計結果を対応するセル(B2:E13)に出力します。
* 「合計」「件数」「平均」シートには、マスターシートの「シート1」の`A1:E13`の構造(文字列/ラベル)を先にコピーしてください。

【要件 2: コメントの整理・出力】
* 生徒シートの`F2:F13`には、AチームからLチーム(F2がAチーム、F13がLチーム)へのコメントが入力されています。
* マスターシートに「Aチーム」から「Lチーム」までの12個の新しいシートを作成します。
* コメントが空欄の生徒のデータは転記しません。
* 各チームシートには、生徒のファイル名とコメント本文をセットで、`A2`セル以降に縦一列で出力してください。

このプロンプト自体を、ChatGPTやGeminiと対話して作成するといいですよ

最終ステップ:GASへの貼り付けと自動集計の実行

入手したコードをGoogleスプレッドシートで動作させるための、具体的な操作手順をご紹介します。

4-1. コードの準備(GASエディタの起動とコードの設定)

  1. 集計用マスターシートを開き、メニューから [拡張機能][Apps Script] をクリックし、エディタを起動します。
  2. AIが生成したコードをエディタにすべてコピー&ペーストします。
  3. コード冒頭にある以下の設定箇所を、ご自身の環境に合わせて必ず修正してください。
    • FOLDER_ID: 生徒の提出ファイルが入っているフォルダのID
    • TARGET_SHEET_NAME: 生徒が入力したシートの名前(例: "シート1"
  4. 上部の保存ボタン(フロッピーディスクアイコン)をクリックしてコードを保存します。

4-2. 実行と結果の確認

  1. エディタ上部のドロップダウンが、作成した関数名(collectAndSummarizeRangeData)になっていることを確認します。
  2. ▶️(実行)ボタンをクリックします。
  3. 【重要】初回のみ、Google Driveへのアクセス許可を行います。
    「承認が必要です」の表示が出たら画面の指示に従い、アクセスを許可してください。
  4. 画面右下に「完了」通知が出たら、集計成功です。
スポンサーリンク

【Q&A】デプロイ(公開)は必要ですか?

プログラミング経験のある方から「GASはデプロイ(公開)が必要では?」という疑問が出るかもしれませんが、今回の作業ではデプロイは一切不要です

デプロイとは、通常、スクリプトを外部のウェブアプリとして公開したり、Googleフォームの送信などの外部トリガーで自動実行させるために必要な手順です。

今回は、GASエディタ内で手動で実行ボタンを押すだけで完結し、結果も自分自身のスプレッドシート内に書き込まれるため、外部への公開設定(デプロイ)は必要ありません。

必要な操作は、コードを保存し、▶️(実行)ボタンを押すだけです。複雑な設定は一切不要ですので、ご安心ください。

【イメージ図解】GAS実行前後のスプレッドシートの構造

このGASが何を実現したのかを具体的にイメージするために、生徒シートと集計マスターシートの構造を見てみましょう。

1. 生徒シート(提出テンプレートのイメージ)

生徒が提出するシートでは、数値集計範囲(B2:E13)とコメント収集範囲(F2:F13)が明確に分かれています。

 ABCDEF
1項目評価1評価2評価3総合 
2Aチーム85907884よく頑張りました。
3Bチーム70809582アイデアが光っています。

2. 集計マスターシート(GAS実行後の結果)

① 数値集計結果シート(「合計」「件数」「平均」シート)

元のシート1の構造(A列と1行目のラベル)がコピーされ、その中のB2:E13セルに集計値が上書きされます。

 ABCDE
1項目評価1評価2評価3評価4
2Aチーム(全生徒のB2セルの合計)(全生徒のC2セルの合計)(全生徒のD2セルの合計)
13Lチーム(全生徒のE13セルの合計)

② コメント整理シート(「Aチーム」シートの例)

コメントが入力された生徒のデータのみが抽出され、ファイル名とコメントがセットで整理されます。

 AB
1ファイル名(生徒名)コメント
2〇〇太郎(提出)よく頑張りました。
3〇〇花子(提出)素晴らしい結果だと思います。
スポンサーリンク

AIが生成した「自動分類・転記」のコード例

AIが生成したコードは非常に長いですが、その中でも生徒のコメントを「空欄チェック」しながら「チーム別に自動分類している、核心となる部分を抜粋してご紹介します。

プログラミングの知識がなくても、コードの中の「コメント」を読めば、AIが何を命令されているか理解できるはずです。


// コメントデータの収集(ファイルループ内)
const commentValues = studentSheet.getRange(TARGET_RANGE_COMMENT).getValues();

for (let i = 0; i < TEAM_NAMES_ALPHABET.length; i++) {
  const teamName = TEAM_NAMES_ALPHABET[i] + "チーム";
  const comment = commentValues[i][0];

  // ★★★ 核心部分: コメントが空欄でないかチェック ★★★
  if (comment && String(comment).trim() !== "") {
    // コメントがある場合のみ、ファイル名とコメントをセットで格納
    teamComments[teamName].push([fileName, comment]); 
  }
}

このように、「もしコメントが空欄でなければ(if文)、そのコメントを格納しなさい」という複雑な指示も、AIは的確に実行してくれています。

これが、手作業の時間を大幅に削減する「自動化の力」です。

まとめ:自動化がもたらす未来と地域IT企業からの提案

今回のGASスクリプト一つで、以下のような複雑な処理がすべて自動で完了しました。

  • 複数シートの合計・件数・平均計算と構造の復元
  • チーム別コメントの自動分類・転記(空欄除外)

かつて手作業で「数時間」かかっていた業務が「数秒」に短縮されます。
この節約された時間は、きっと生徒との対話や、よりクリエイティブな指導計画に活かせるはずです。

三島笑会は、「ITは難しい」というイメージを無くし、先生方やプログラミング初心者の方々が、AIと身近なツールを使って業務を改善できるよう、お手伝いします。

今回のGASのように、「この部分も自動化できないか」という疑問があれば、ぜひお気軽にご相談ください。

タイトルとURLをコピーしました