BLOG

皆さんも学生やスタッフ向けに簡単なミニテストを作成し、施行することがあると思います。通常テストを行う際は、問題を紙に印刷し、回答用紙にて答えを記入してもらって回収し、それを出題者が添削する、という流れになると思いますが、なかなか労力がかかります。参加者が多い場合は紙代もけっこうかかってしまいます。そこまで労力をかけたくない簡単なミニテストを行う場合は、googleフォームでテストを作ると非常に便利ですので、私が行ったやり方を説明します。


【1】googleフォームとは

まずgoogle フォームについて説明します。Googleフォームは、誰でも無料で作成できるアンケート作成ツールです。

https://www.google.com/intl/ja/forms/about/


Googleフォームのメリットは、(1)作成が簡単であること (2)回答結果が自動的にGoogleスプレッドシートにてまとめられること (3)回答結果の集計・分析を自動で行ってくれること


があります。(2)で触れているGoogleスプレッドシートですが、これはgoogleが提供する表計算ソフトで、「オンラインで編集・共有出来るエクセル」と考えてよいです。エクセルでできるマクロは全て可能です。

では実際にGoogleフォームでテストを作成、実施し、結果をGoogleスプレッドシートで自動計算する方法を説明します。


【2】Googleフォームでテストを作成

Googleフォームでは回答する形式を選べます。テストで使えるのは、フリー記入、選択枝作成(multiple choiceもしくはcheckbox)かと思います。Multiple choiceの場合は選択肢から1つを選ぶ形です。Checkboxでは複数選択が可能になります。また、それぞれの質問に対して「必須項目かどうか」を選ぶことができます。

以下私が作成したテストの作成方法です。(今回、病院職員を対象にした医療知識の確認テストを作成しました。)

1. まず最初の質問で、名前を記入するようにします。フリー記入です。必須項目にします。

2. 次に、参加者の所属部署を聞きます。看護師であればどの部署か、などをmultiple choiceの選択肢に入れます。必須項目にします。これは必須ではないと思いますが、私は結果分析にて参考にするために作成しました。


3. ここから、実際のテスト問題を作成し、記入していきます。今回はすべて選択肢問題と致しました。質問文を文章で記載し、multiple choiceにて回答の選択肢を作成します。質問文には文章のみならず、画像を挿入する事も可能です。ただし一点問題があり、googleフォームでは質問文は改行ができません。綺麗なレイアウトでみせる事は出来ませんので、適宜スペースをいれるなど、注意が必要です。すべて必須項目にします。



4. 最後に、質問やコメントを記載出来る項目を作成しました。こちらは必須項目にはしませんでした。


【3】参加者にGoogle フォームのHPリンクをシェアし、テストを開始

作成したフォームの右上にある「送る」ボタンから、入力フォームを送る事が出来ます。8割の参加者は自らが所有しているスマートフォンにてテストを行いました。残りの参加者は病院のPCにてテストを受けました。狭い部屋で行いましたが、紙ではなくスマホ画面をみて、質問を送りながら進めていくので、隣の人と近くても覗き見などによるカンニングはおこりにくいと思いました。(インターネット環境で行いますので、google検索などのカンニング行為はしやすいという問題はありえます。)


【4】回答が全て終了した参加者は「送信」ボタンを押して結果を送信

送信すると、画面が切り替わり送信出来た事が確認できます。これにてテストは終了となります。


【5】googleスプレッドシートで参加者全員が答えられているかを確認する

参加者全員が回答を終えたら、ここから採点に入ります。まずgoogleフォームとリンクしているスプレッドシートを開きます。Googleフォーム作成者は、responseというタブの右上に緑色のアイコンでリンクが出ますので、そちらから入ります。「新たに作成する」を選択してください。

開いたスプレッドシートには、最初の列に送信された時間、次の列に名前が記載されています。全員が回答できていることをまず確認します。また、複数回送信している参加者もいると思いますが、これを阻止することは機能としては出来ません。今回は最後に送られたものを採用することにし、その他は削除しました。


【6】各列の質問に対して一番下の行に、正解を記入します。


【7】マクロ計算を用意に行うために、【6】で作成した正解の行を、「回答者の人数分」だけ下に複製コピーします。つまり、53人の参加者であった場合、同じ正解が記載された行が53列並ぶ事になります。


【8】各回答者のそれぞれの回答が正解かどうかを記載する列を、右側に作ります。今回私の質問はQ1からQ14まででしたので、Googleフォームで自動的に作成された列の右側に、「Q1 result」「Q2 result」と、正解かどうかを記載するための列をQ14まで作成します。


【9】各回答者の回答が正解かどうかをDelta関数を用いて【8】で作成したセルに自動記入します。Delta関数は、「二つのセルの記載が同じならば1、異なる場合は0」を入力する関数です。

(Delta関数についてはこちらが詳しいです。http://bizfaq.jp/excel-hikaku/)

まず1番上の回答者の「Q1 result」のセルにdeltaと記載しましょう。そうすると自動で関数のwindowが開き、delta関数を開くところがでますので、こちらをクリックします。(もしくは、エクセルのように画面のfxのところに=deltaと入力してもよいです。)

delta関数では2つのセルが同じかを比べますので、まず「この回答者のQ1の回答」セルをクリックします。続いて、【6】で作成した「Q1の回答」をクリックします。最後にenterボタンを押せば、この2つのセルを比べるDelta関数が作成されます。

二つが同じ、すなわち正解であれば1と表記され、不正解であれば0と表記されます。


【10】引き続き、同じ回答者のQ2からQ14までの回答が正しいかどうか、Delta関数を作成しましょう。【9】で作成した「Q1 result」のセルの右下をクリックして、そのまま右の「Q14 result」 までドラッグします。これによって、ひとつずつずれたセルでのdelta関数がコピーされまずので、【8】で作成したセルに、正解かどうかの結果が表記されます。


【11】Q14 resultまでの結果が表記されたら、点数を出すためにその右の列に「result all」の列を作ります。一番上の回答者のセルで、「Q1 result」から「Q14 result」までの結果の足し算の関数(「SUM」)を入力します。これによって、正解なら1となっている結果が合計されます。

今回、問題数は14問ですので、満点だと14という数字になります。


【12】最後にもう一列、「score」という列を右に作ります。これは【11】で作成した数値を100点満点で表したものです。こちらは計算の関数を手入力します。

 「result all」の数値 / 14 * 100

これにて、100点満点とした割合が出せます。今回、14で割るためほとんどの回答者で小数点が発生しますので、小数点1桁で四捨五入して記入されるようにしました。

ここまでで、一番上の列の回答者の点数を出す事ができました。


【13】ここまで作成した関数をすべての回答者に適応させます。【12】までで作成した回答者の列をすべて選択し、一番右下のところをドラッグし、一番最後の回答者のところまで複製コピーを行います。これにて、1つずつセルがずれた上で上手く計算ができます。

これで、全回答者の点数が出す事ができました。


【14】最後に、全回答者の点数の下のセルに、平均を出す関数にて平均点を計算しました。


【15】なお、フォームのresponseというタブでは、全回答者の回答の集計結果がわかります。回答がばらけた難しい問題だったか、ほぼみんな正解している簡単な問題だったかは一目で分かりますので、テストの解説時に有用でした。


以上です。

最後に、参考までに今回のテストのデータをコピーしたものを共有いたします。

フォーム:

https://docs.google.com/forms/d/10wexj6XvvWrNtrvO5PopF_g9cZoldQfAJFt-IW3wwKs/viewform

スプレッドシート:

https://docs.google.com/spreadsheets/d/1TPVU5RBToTEjg61ine93pTqH_di2_PPPvNiZAX3ermo/edit?usp=sharing