Googleフォームのデータをスプレッドシートで編集するときのズレをなくす方法

効率化

googleフォームでアンケートを作成し事前にスプレッドシートで関数を設定し自動で分析ができるようにしておこうと意気込んだものの,いざデータを見るとズレているなんてことありませんか。今回は,そんな ”Googleフォームのデータをスプレッドシートで編集するときのズレをなくす方法” をわかりやすく説明したいと思います。

あるのすけ
あるのすけ

特に学校で先生が今すぐに使用できるように,分かりやすく説明していきたいと思います!

ズレるとはどういうことか

単純にGoogleフォームの回答を受け付けるページから,別ページに編集用として ”=’フォームの回答1′ !A2” などとコピーすると,回答が正しく反映できないことがあるということです。具体的にどのようになるかというと,

アンケートの回答データ反映前後でセルの参照先が変更してしまう

本当は ”フォームの回答1”のページのA2のセルを参照していたはずなのに,回答データを反映させていくと,A3→A4→・・・と回答を得るたびにズレていくのです。

せっかく事前に準備しても意味がないじゃないか!

あるのすけ
あるのすけ

ひと手間でズレないようにする方法があるのですよ!

ズレをなくす方法

ズレないようにするためには2つの関数を使います。

  • ARRAYFORMULA 関数
  • IMPORTRAGE 関数

初めて使う方のためにも簡単にそれぞれの関数を解説します。

ARRAYFORMULA 関数

=ARRAYFORMULA( 配列数式 )

配列数式のところには,参照したいセルの範囲が入ります。実際に ”=’フォームの回答1′ !A2” と入力した時と,=ARRAYFORMULA( ‘フォームの回答1’ !A2 )と入力した時とで,見た目ではわかりませんが,表示したい範囲の一番左上だけに入力するだけで,指定した範囲全てが参照される関数です。一番左上のセルには,ARRAYFORMULA( ) が入っていますが,それ以外にはただ各セルにデータが入っているようにしか見えません。

参照するときには便利な関数ですが,この関数だけではうまくいきません。初めの一番単純なセルの参照と結果は同じになってしまいます。

IMPORTRAGE 関数

=IMPORTRANGE( “スプレッドシートのURL”, “配列数式” )

この関数は,他のシートから指定した範囲のデータを読み込むことができる関数です。別のスプレッドシートのデータを1つのスプレッドシートにまとめたいと思った時などに使用します。ちなみに,IMPORTRANGE関数は,Googleスプレッドシートだけのオリジナル関数なので,Excel などでは使用することができません。

このスプレッドシートのA2:B6の範囲のデータを挿入したいときに,URLが必要になってきます。URLは画面右上の共有のところから,コピーしてください。それを ”” で囲みます。また,配列範囲に関しても ”” で囲う必要があります。

正しく行ったとしても,#REF!と出てしまう

しかし,上の画像のようにエラーが必ず出ます。そのときには,

対象のセルにカーソルを持っていき,”アクセスを許可” をクリックしてください。すると,先ほどのARRAYFORMULA関数と同様に選択したセル範囲分が参照されて表示されます。

このどちらも結局は同じようなことをおこなっています。そのやり方が少し違うのでこれらをうまく組み合わせることで Googleフォームのデータをスプレッドシートで編集するときのズレをなくす ことができるようになるのです。

2つの関数を組み合わせる

組み合わせ方は,

= ARRAYFORMULA ( IMPORTRANGE ( “スプレッドシートのURL”, “配列数式” ) )

この方法をとることで,Googleフォームからの回答結果のデータをリアルタイムに取得することができます。

これを使うことで,

  • 関数を事前に組んでおけば,データ処理が可能になる
  • グラフを挿入しておけば,リアルタイムでグラフが更新される
  • 元のデータを直接触らないので,データを書き換えてしまう心配がない
あるのすけ
あるのすけ

関数を用いて取得したデータに直接手入力すると,エラーが出ますよ。
この点も,間違ってデータを書き換えてしまう恐れがなくて安心ですよね!

Googleフォームのデータをスプレッドシートで編集するときのズレをなくす方法 まとめ

いかがだったでしょうか。2つの関数を使うだけで,Googleフォームのデータをスプレッドシートで編集するときのズレを簡単になくすことができます。 ARRAYFORMULA関数や IMPORTRANGE関数自体はあまり使うことがない関数かもしれないので覚える必要ありません。しかし,この2つを組み合わせた関数は使いこなせるようになっておくと、Googleフォームとスプレッドシートを連携するときにはとても便利になりますので,ぜひ今回使った関数をコピペして活用してください!

ARRAYFORMULA( IMPORTRANGE( “スプレッドシートの URL” , “範囲の文字列” ) )

では!

にほんブログ村 教育ブログへ
にほんブログ村 教育ブログ 教育者(中学校)へ

コメント

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