見出し画像

Googleフォーム▶Googleスプレッドシートで集計名人へ リンク(同期)の理解と注意点

SPLIT関数TEXTJOIN関数 の超応用例シリーズの番外編ってことで、実務で活用できる Googleフォームの回答をスプレッドシート連携した際に 使える関数を取り上げたいと思ってましたが、その前提となる

Googleフォーム と Googleスプレッドシートのリンク(同期)

について書いた方が良さそうだなと思いまして、今回はこちらのネタを。

便利で無料で簡単に使えるGoogleフォームですが、仕組みをよく理解せずに使用すると情報漏洩のリスクがあります。

GASやシート関数は登場しませんが、意外と知らない機能や注意点があるかもしれません。是非、最後までお読みください。

前回は お題たっぷりの SPLIT関数/TEXTJOIN関数 超応用例2 を書きました。




Googleフォームの基本を理解する

GoogleWorkspace(Googleのツール群)の中で、アンケートやテストの実施に使えるのがGoogleフォームです。

同じ組織内での利用だけではなく、回答用ページを一般公開してGoogleアカウントが無い組織外のユーザーからも回答を募るといった使い方も出来ます。

Googleフォームは回答を自動でグラフ集計してくれてるので、単体で使っても十分に便利です。

しかし Googleフォームは単体で使うだけではなく、同じGoogleWorkspaceのツールの1つ Googleスプレッドシートにリアルタイムで回答を出力(同期)することが出来ます。

これが非常に強力で、Googleスプレッドシート側で 数式やピボットテーブル、GASなどを使うことでより高度な分析や処理が自動化できのが魅力です。

まずはGoogleフォームの基本をみていきましょう。



Googleフォームの作成方法

新しくGoogleフォームでアンケートやテストを作成するには、Googleドライブの「+新規」ボタンから立ち上げることをお勧めします。

Googleドライブ内でGoogleフォームを使うプロジェクト(案件)のフォルダを作成した上で、+新規ボタン > Googleフォーム から

一般的なアンケート等を作成する際は「空白のフォーム」
テストを作成したい場合は「空のテスト」を選択します。

初回はガイドが表示される


1から作るのは面倒って場合は「テンプレートから」を選択して、ベースとなる型をそのまま使ったり一部編集して利用することも可能。

もちろん作成済みのGoogleフォームをコピーして使うこともできます。

Googleドライブから作成ではなく、Googleフォームのホーム画面から新しいフォームを作成することも出来ますが、

どうしても ファイルを見失ったり散らかったりしやすいので、Googleドライブから作成する手順をお勧めします。



Googleフォームの公式スマホアプリは存在しない

純正ではないアプリ

たまに知恵袋等で書き込まれているGoogleフォームの質問には、「スプレッドシートに連携しようとしたら課金ページに飛ばされる」とか「作成できる質問の数が5件までと制限される」といった、通常のGoogleフォームの仕様ではないものがあります。

これらはよくよく話を聞いたら、「スマホアプリ版のGoogleフォームを使ってます」というオチだったりします。

Googleフォームに公式の純正スマホアプリは存在しません!

Android版も iPhone、iPad版もGoogleフォームのアプリをGoogleは提供していません。

偽物とまではいいませんが、検索上位に表示されるGoogleフォームアプリは、サードベンダーが作成したもので、無料利用だと色々制限があります。

もちろん課金すれば普通に使えるアプリもあるでしょうが、中には情報を抜き取ろうとする悪質なアプリが潜んでいる可能性もあります。

間違い探しのような・・・

アイコンもGoogleフォームの公式と見分けがつきづらいものを使ってますw

これらのアプリをGoogleフォームそのもの(公式アプリ)と勘違いして アンケートを作成・回答収集完了しちゃって、いざスプレッドシート連携しようとしたら課金しないと連携出来ない・・・と詰むパターンも。

スプレッドシートなどの公式のアプリは、提供元が Google になっています。

とりあえず現時点(2024年8月)では、Googleフォームの公式アプリは無いことを理解した上で、会社名が違うアプリには注意しましょう。

Googleフォームをスマホから作成・編集する場合は、スマホのブラウザでPC版表示をすることで 可能です。(操作しづらいですが)

■Point1
・Googleフォームには公式のスマホアプリは存在しない
・スマホから作成、編集する場合は ブラウザをPC版表示で対応

※ ↓ スマホブラウザでGoogleツールを使う方法はこちらで触れています



GoogleフォームのとGoogleスプレッドシートのリンクを理解する

Googleフォームで質問を作成する方法やバックグラウンドカラー、ヘッダー画像の編集方法、回答用リンクの取得・送信方法は 多くのサイトで触れているので、そちらを参照ください。

機会があればこれらも noteで今後取り上げるかもしれません。

ここからは Googleフォームの回答をGoogleスプレッドシートにリンクする方法を解説していきます。



GoogleフォームとGoogleスプレッドシートを連携させる方法

2通りあります。

1つはGoogleフォームを作成してから、Googleスプレッドシートに連携させる方法。

Googleフォームの編集画面には、「質問」「回答」「設定」の3つのタブがありますが、「回答」タブを選択して「スプレッドシートにリンク」をクリック。

回答の送信先として 「新しいスプレッドシート」「既存のスプレッドシート」どちらかを選択できます。

なお、既存のスプレッドシートを選んだ場合も 回答をリンク出来るシートは新しいシートのみとなります。

Googleフォームは既存のシートを指定してリンクすることは出来ません。

作成すると、このようにリンクしたスプレッドシートが立ち上がります。

シート名は作成時は指定できず、自動で「フォームの回答 1」(半角の1の前に半角スペースが入っている)となりますが、生成後Googleスプレッドシート上から普通にシート名を変更することは可能です。

Googleフォームとリンクされたシートは、シート名の前にGoogleフォームアイコンが付いているので見た目で分かります。

またシートの1行目は行固定されて、自動で質問名が入ります。

mirの環境では当note作成の 2024/8/18 時点では まだ適用されていませんでしたが、近日中にGoogleフォームの回答をリンクしたスプレッドシートは、自動でテーブル形式が適用されるようになることが発表されています。

■Point2
今後はGoogleフォームをスプレッドシートにリンクした場合は、自動でテーブル形式になる

フォームの回答のスプレッドシート連携は、何件か回答をもらった後で実施しても問題ありません

回答済みデータは、Googleフォーム内に保持されているので、スプレッドシートに連携した段階で一気に過去の回答もスプレッドシートに出力されます。


スプレッドシート側の画面

Googleフォームと連携したスプレッドシートでは、メニューの

ツール > フォームを管理

から、連携しているフォームの編集画面を開いたり、回答用ページ(実際のフォーム)を開いたり、回答者へフォームのURLを送信する画面や埋め込み用のHTML表示、回答の概要を表示、さらにフォームのリンクを解除といっった操作が可能です。

フォームのリンクを解除した場合は、新しい回答があってもスプレッドシートに反映されなくなりますが、既にスプレッドシート側に書き込まれた過去の回答が消えることはありません


もう1つの方法はGoogleスプレッドシート側から 新しいGoogleフォームを生成する方法です。

メニューの ツール > 新しいフォームを作成 とすると、開いているGoogleスプレッドシートに新しい回答シートが生成され、Googleフォームの編集画面が立ち上がります。

ただ、あまりこの手順でGoogleフォームとスプレッドシートの連携をする人はいないと思います。

余談ですが、Microsoft365のツール群には Googleフォームに相当する Microsoft Formsがありますが、こちらは割と最近までは Web版のExcelからFormsを生成しないと 回答がリアルタイムにExcelに反映されませんでした。

2024年の2月アップデートで、ようやくForms側からリンクさせたいExcelを生成できるようになっています。



Googleフォーム回答のスプレッドシートへの反映

連携後のスプレッドシートへの回答の反映は非常にスムーズで、スプレッドシートを開きっぱなしでも回答がどんどん自動で入ってきます。


また、フォーム編集画面上での質問名の変更や質問の追加もほぼリアルタイムでスプレッドシート側に反映されます。

このスムーズな同期は、さすが クラウドファーストを掲げるGoogleですね。



1. Googleフォームの回答を一部の人と共有したい

続いて本題の Googleフォームの回答をスプレッドシートにリンク(同期)した際のメリットを見ていきましょう。

単にスプレッドシート上で数式を使って集計できるだけではなく、様々なメリットがあります。ただし、出来ないことや覚えておくべき注意点もあるので、合わせてそれらを解説していきます。



1-1. Googleフォームは閲覧での共有ができない

Googleフォームの共有は特殊で、なぜか閲覧者という設定がありません。アカウントを指定して共有する場合、必ず編集者になってしまいます。

これが厄介で、アンケートを集計するメンバーには回答は共有したい。でも、誤操作や改変の心配があるので編集はさせたくないといった場合、「閲覧のみ」としたいケースも多いのですが、それが出来ません。

そもそも共有のダイアログは右上の三点リーダーから開くのですが、

共有ではなく「共同編集者」を追加となっています。

さらに厄介なのが、Googleフォームは スプレッドシートやドキュメントと違って過去の変更履歴が保持されず、誰かに質問を編集されてしまった場合元に戻す方法がありません

ドライブ上の履歴で誰がいつ編集したか ざっくりと確認は可能ですが、過去の版に戻れないのは注意が必要です。


■Point3
・Googleフォームは「閲覧」のみの共有が出来ない。
・Googleフォームは過去の版に戻れない



1-2. 「結果の概要を表示する」は ONにしない

一部の人に回答を共有したい時に絶対やってはいけないのが、設定タブから表示設定を開いて「結果の概要を表示する」をONにすることです。

これをONにしてしまうと、フォームの回答者全員の回答後の画面に「前の回答を表示」という リンクが表示されるようになり、

このように 全員が回答の概要を見れる状態になってしまいます。

もちろん回答URLは制限がかかっていないので、この回答URLが流出した場合はフォーム回答者でなくても結果を見ることが出来る。かつ、オーナー側は誰がアクセスしたかわからないという最悪のケースとなります。

実際に個人情報の流出事案として報道されたケースです。

■Point4
「結果の概要を表示する」は基本的にはONにしない

要注意です。

ただ、この機能は意味がないか?というとそんなことは無くて、OFFのまま使うことで フォームの編集権限の共有メンバーの誤操作防止に一定の効果があります。

共有メンバー用の「結果の概要URL」は、「結果の概要」というリンクから取得できます。

https://docs.google.com/forms/d/フォームの編集用ID/viewanalytics

こんなURL

このURLは、先ほどの概要を表示するをONにした時のURLとは少し違いフォームの回答者ではたどり着けないものですし、仮に流出してもフォームの共同編集者以外の権限がない人は開くことが出来ません

回答を共有したいメンバーには、「編集権限」を与えつつもこの回答の概要URLを伝えることで、編集等の誤操作を少し防止することができます。

ただ、この画面の右下に鉛筆マークのアイコンから編集画面に簡単に飛べるので、悪意をもって編集しようとしたら防げません。

また、うっかり上部の「分析を公開」を押されてしまうと「結果の概要を表示する」がONになり、先ほど書いた情報流出に繋がる可能性があります。

回答を一部の人に閲覧させる方法として 共同編集者に設定して「結果の概要URL」を伝えるは、最も簡単ではありますがリスクもあることを覚えておきましょう。



1-3. 絶対にやってはいけない Googleフォームのリンク共有

信頼できる一部のメンバーであれば、もちろん共同編集者とすることは問題ありませんが、これは相手のGoogleアカウントを指定した共有としてください。

Googleアカウントが無いメンバーにも見て欲しいからと 「リンクを知っている全員」 に共有は絶対にやってはいけません。

GoogleフォームのURLは特殊で、

編集用URL
https://docs.google.com/forms/d/【編集用ID】/edit

回答用URL
https://docs.google.com/forms/d/e/【回答用ID】/viewform

このように編集画面のURL(ID)と回答画面のURL(ID)は、まったく別のものとなっています。

つまり本来は フォームの回答者は「編集者URL」を知る方法はなく、 「リンクを知っている全員」で フォームが共有されていても 回答者が編集画面にたどり着くことは出来ない!はずなんですが・・・

実はつい最近まで、

  • Googleフォーム の 編集画面が「リンクを知っている全員」で共有されている

  • の回答者が Googleフォームの回答者画面をGoogleアカウントでログインした状態で開く

この条件を満たした場合、GoogleドライブやGoogleフォームのトップページ上で 共有アイテム や最近使用したアイテム として フォームのファイルが表示され、そこから編集画面が開けてしまうという仕様になっていました。

この設定による個人情報の漏洩の疑いがあったことを公表している企業がニュースになっていましたが、公表していない(気づいていない)企業や団体がもっと多く存在すると思われます。

現在はこのトンデモ仕様ではなくなっており、回答者のGoogleドライブに編集できるフォームは表示されなくなっています。

2024年7月時点ではこの仕様は解消されたようですが、「なんだこれ」と第3者が 一度フォームの編集画面を開いてしまってる場合は、オーナーが権限変更しない限りは表示されたままとなっています。

仕様が変わったとはいえ、いつまた仕様変更や不具合で同様の事象が発生しないとは言い切れませんし、そもそも リンク共有はこちらからURLを伝えていない人に開かれる可能性が低いというだけで、悪意ある人が総当たりで開いてしまう可能性はゼロではありません。AIに情報を収集される可能性もあります。

■Point5
Googleフォームは絶対にリンク共有してはいけない

特に個人情報を扱うようなフォームでは注意しましょう。



1-4. Googleフォームの回答グラフはスライドにリンク貼り付けできる

では、フォームの編集権限を与えずに回答だけを一部メンバーに閲覧させるにはどうすればよいか?

方法の1つは グラフをコピーして Googleスライドに リンク貼り付け、そのスライドを閲覧権限で共有するという方法です。

回答の概要ページにある 個々のグラフにマウスポインタをあてると 右上にコピーというボタンが表示されるので、これを押してコピー状態としてGoogleスライドで リンク貼り付けすればOK。

ただし、このリンク貼り付けは以前noteに書きましたがGoogleフォーム側の回答が追加されて回答の概要グラフに変化が合っても、リンク貼り付けのスライド側のグラフは自動で同期しないなんちゃってリンク貼り付けです。

残念ながら手動更新が必要となります。

この手動更新はGASで自動化する方法があり、前に noteで紹介してます。

■Point6
・フォームの回答の概要グラフは、Googleスライドにリンク貼り付け可能
・ただしグラフの同期には手動対応かGASが必要

更新にGASが必要ってのがハードルが少し上がりますね。

他にもグラフは一つずつしかコピペできなかったり、貼り付けたグラフで文字が途切れている箇所は見る方法がなかったり、概要だけで個別の回答が確認できない など不便な点があります。



1-5. Googleスプレッドシートに回答をリンクしてスプレッドシートだけを共有

というわけで、もう1つの方法

「Googleフォームの回答を一部の人と共有したい場合は、Googleフォーム自体は共有せず、回答をGoogleスプレッドシートにリンクして、そのスプレッドシートをアカウントを指定して共有する」

これがベストな方法となります。

スプレッドシートを編集権限で共有しても Googleフォームの概要ページや編集ページには「権限が必要です」と表示され入れませんし、回答はリアルタイムで同期されます。


さらにスプレッドシートを閲覧権限 + 印刷やダウンロード、コピー禁止とすることで、本当に回答の閲覧のみと制限することも出来ます。

グラフや表などで見栄えや集計を整えるには一手間必要ですが、最もリスクなく一部のメンバーと回答だけを共有する方法と言えるでしょう。

■Point7
Googleフォームの回答だけを一部メンバーに共有したい場合は、回答をGoogleスプレッドシートにリンクして、そのスプレッドシートを「アカウントを指定して」共有する方法がベスト。



2. Googleフォームの回答があった時、複数人に通知を飛ばしたい

スプレッドシートにリンクすることで、回答だけを「閲覧権限」で共有できるというメリットに続いて、回答時の通知について紹介します。



2-1. Googleフォームの回答通知は 通知を欲しい人が自分で設定する必要がある

設定タブじゃなくて、こっちにあるんでわかりにくい

Googleフォームは回答があった時に、メールに通知を飛ばすことが出来ます。

設定方法は 回答タブ の右上三点リーダーから 「新しい回答についてのメール通知を受け取る」をクリックして、チェックが入った状態にすること。

これで誰かが回答したらメールで通知がくるようになります。

ただし、この設定でメールの通知を受け取れるのは「自分」だけです。オーナーではなく共同編集メンバーも通知設定は出来ますが、自分で通知を設定する必要があります。

通知先としてグループアドレスを指定したり、他の人への通知を設定してあげることが出来ません。

また、メールの本文にフォームの回答内容を含めるといったことも出来ません。

これらを実装したい場合は、GASを使うしかありません。(解説サイトはいっぱいあります)

ただし複数人へのフォーム回答の通知メールに関しては、Gmail側で 特定のメールだけを Googleグループのアドレスに転送するように設定することで対応出来ます。



2-2. リンクしたスプレッドシートからもフォーム回答の通知メールは設定可能

上の方法が使えるのは Googleフォームの共有メンバー(共同編集者)に限られます。

それではフォームは共有せず リンクしたスプレッドシートだけを共有したメンバーが 回答の通知メールが欲しい場合はどうすればよいか?

Googleフォームの回答通知メールは、Googleスプレッドシート側でも設定が可能です。閲覧権限でも設定ができます。

メニューから

ツール > 通知設定 > 通知を編集

こちらで通知ルールの設定ダイアログを開き

  • ユーザーがフォームを送信したとき

  • メール -その都度

に設定することで、回答された際に通知メールを受け取ることができます。

Googleフォームから設定したものと比べ、Googleスプレッドシート側で設定した方は通知メールがあっさりしていますが、

変更内容を確認 ここをクリック

からリンクを開くと

最新回答がハイライト表示され、なかなか便利です。

ただし、Googleスプレッドシート側から設定するフォームの回答通知メールも 宛先はログインしている自分のGmailのみで、他のメンバーやグループアドレスの指定は出来ません。

基本的に通知が欲しい人は自分で設定してね!となります。

さらに、誰が通知設定をしているか?といった情報をオーナーが把握することも出来ません。ここが残念。

■Point8
回答の通知メールは、Googleフォームの編集画面、リンクしたGoogleスプレッドシート どちらでも可能。ただし通知が欲しいユーザーが自分で設定する必要がある



3. Googleフォームの回答を加工したい

Googleフォームの回答を削除したり、加工したり編集したり、追加したりといったことが、リンクしたスプレッドシート上では可能です。



3-1. 回答は削除できるが連動しない

回答の削除は フォーム編集画面、スプレッドシート、両方から可能です。

フォーム編集画面からは、回答タブを表示して 三点リーダーから 「すべての回答を削除」で 全回答を一括削除したり、

回答タブ内の「個別」タブから 〇件目の回答を表示して、特定の回答を1件だけ削除することもできます。

ただし、Googleフォームの編集画面で回答を削除してもリンクしているGoogleスプレッドシート側に既に書き込まれた回答は削除されません

同様に リンクしたGoogleスプレッドシートの回答を削除しても、Googleフォーム側の回答には影響しません

たとえばスプレッドシートで 1件(1行)回答を削除しても、Googleフォーム側では その削除した回答は引き続き確認できます。

また、スプレッドシート側で回答を削除する際の注意点ですが、最後の回答でもDeleteで値を消してはいけません

必ず行削除をする必要があります。

Googleフォームの回答をリンクしたシートは、回答が追加された行は裏側でユニークなIDを持っていると思われます。

その為、Delteで回答を削除した場合は、行そのものは残っているので

このように、Deleteで回答を消した行の下に新しい回答が書き込まれてしまいます。

■Point9
・回答の削除は Googleフォーム編集画面、リンクしたGoogleスプレッドシート、どちらも出来るが 互いに削除は連動しない
・スプレッドシート側で回答を削除する際は行削除を使う



3-2. 回答の追加や編集は フォーム側の編集画面からは基本的には出来ない

Googleフォームの 編集画面からは、新しい回答の追加や一括インポート、回答の編集といったことは出来ません

CSVで一括インポートが出来たら便利かも?と思う時もありますが、そんなことするなら Googleスプレッドシート側でまとめてから集計すれば良いってことですね。

当然、Googleスプレッドシートは 回答をリンクしたシートでも自由に行を追加したり手入力、数式設定、編集が可能です。

先ほどの 削除と同様に リンクした Googleスプレッドシート上で 回答を追加したり、既に書き込まれている回答をスプレッドシート上で編集した場合も Googleフォーム側の回答には同期されません

なので、スプレッドシート側で回答を編集しすぎてわけがわからなくなった場合でも、Googleフォーム側に元の回答データが残っているので復元が可能ということです。


回答の編集はフォームの編集画面からはできないと書きましたが、回答の編集をフォームから行う方法はあります。

設定タブ > 回答 > 回答の編集を許可する

をONにすることで、フォーム回答完了の画面に

回答を編集というリンクが表示されるようになり、このURLから

回答を編集することが可能です。

このフォーム回答の編集用URLは、

https://docs.google.com/forms/d/e/【回答用フォームID】/viewform?edit2=【回答毎のユニークなID】

このような構成なのですが、このURLから回答編集のフォーム画面を開くと 元の回答者でなくても回答を編集出来てしまうので注意が必要です。

つまり他の人の回答を 改変できてしまうということです。

ただし設定で 「メールアドレスを収集する」「確認済み」とした場合は、

回答の際に Googleログインが必須となり、編集URLから回答済みの回答を他人が編集した場合は、回答に記録される回答者のGoogleアカウントが最終的に編集者のものに更新されるので、偽装を防止できます。

とりあえずフォーム回答の編集URLは取り扱い注意ってことですね。

残念ながらフォームのオーナーや編集メンバーがこのURLを得るには、GASを使う以外に方法がありません

GoogleフォームのGASを使った効率化については、また別の機会に書きたいと思います。

フォームの回答画面から編集(更新)された回答は、

Googleスプレッドシート側では 編集個所に「返信システムがこの値を更新しました」というメモが付き、回答が編集されたことがわかるようになっています。

編集前の回答を確認したい場合は、該当のセルを右クリックして

編集履歴を表示とすればOK

どのタイミングで、何から何に変更されたか が確認できます。

この回答の編集(更新)はGoogleフォーム編集画面の回答からは確認が出来ないので、Googleスプレッドシートに回答をリンクするメリットと言えるでしょう。

■Point10
・スプレッドシート側での回答の編集は フォーム側には連動しない
・フォームから回答を編集するには「回答の編集を許可する」をONにする
・編集用URLをオーナーが取得する為にはGASを使う必要がある
・編集用URLを使えば 誰でも回答が編集できるので取り扱い注意
・編集用URLから編集した回答は スプレッドシート上には記録されるが、フォーム側からは編集の痕跡を確認できない



3-3. 回答シートは 列を追加したり、並べ替えが出来る

先ほどの回答(行)の追加、削除、編集もそうですが、Googleフォームを連携させたスプレッドシート側の操作は割と自由で、間に列を追加したり、列を並べ替えたりといったことも可能です。

その場合でも、きちんとその後の回答は正しい列に反映されます。

これによって、フォーム側の質問順は 回答しやすい順序に、スプレッドシート側の列順は集計(見やすさ)を重視で、といったことも出来ます。


ただし、回答列は削除することは出来ません。

見せたくない場合は、非表示で対応する必要があります。

■Point11
フォームの回答をリンクしたスプレッドシートは、列の追加や列の入れ替えなど自由に可能。その後入る回答は正しい列に反映される。



3-4. 複数フォーム、複数シートの連携

同じ質問構成のGoogleフォームが複数あった場合、これを1つのシートにまとめてリンクさせるといったことは出来ません。

もちろんGASを使えば可能ですが、機能としてはありません。

ただ、フォーム毎にシートを分けてもよければ、1つのGoogleスプレッドシートファイル(ブック)に回答を集約することは出来ます。

GoogleスプレッドシートはExcelと違って複数シートの串刺しVSTACKは出来ませんし、パワーピボットのような機能もありませんが、少し頑張ればREDUCE関数を使って複数シートのデータを1つの表にまとめることは出来ます。


逆に1つのフォームの回答を同時に複数のスプレッドシートにリンクさせる(同期させる)ことも 機能としては出来ません。

こちらもGASを使う方法はありますが、普通にIMPORTRANGEや別シートを参照する数式で対応する方法でも良いかと思います。

FILTER関数やQUERY関数と組み合わせることで、特定の回答グループ毎にシートを分けて回答を出力といったことも出来ます。

また、フォームのスプレッドシートへのリンクは、一度解除すると 二度と同じシートにリンクさせることは不可能なんで注意が必要ですが、

リンクを解除して新しいシートに再リンクすることで

Googleフォーム側で保持している過去の回答データを再度スプレッドシートに出力させることが出来ます。

ただし 過去にスプレッドシート側で入れ替えた列や追記した内容、回答の編集URLから更新した際の回答の変更履歴などは失われています。

当然ですが Googleフォーム側で削除してしまった回答は、スプレッドシートに出力されません。

■Point12
・複数のフォームの回答を1つのシートにリンクしたり、1つのフォームの回答を複数シートにリンクさせることは基本的にはできない
・GASやシート関数を組み合わせた数式で対応は可能
・Googleフォーム側からリンクを解除、再度スプレッドシートへリンクとすることでフォーム側の回答を再出力可能


3-5. スプレッドシートへ追加される回答は 真っ新な行の挿入である

Googleフォームの回答をスプレッドシートにリンクした際の厄介な挙動がコレです。

追加される新しい回答は、まっさらな行の挿入となっています。

GASのシートクラスの appendRow(rowContents) に近いですが、微妙に挙動が違います。

たとえば、A列のタイムスタンプの 表示形式を 時間を表示させない「日付」に設定して、B列を太字 & 明るい赤3塗りつぶし、C列を明るい黄3塗りつぶしとした場合、

このように、上下の行の 表示形式も書式設定も関係なしの 真っ新な行追加として回答が入ります。

セルの色、文字の色、太字などは 条件付き書式を使って対応できますが、Googleスプレッドシートは 条件付き書式では表示形式 (日付や通貨などの形式)を制御できないので、非常に困ります。


また、オートフィルで事前に入れていた数式が、回答が入るとその行の数式だけ消えてしまうのが、初心者を悩ませる一因だったりもします。

「この事前に入れておいた数式が 回答の行に適用できない」を解決するのが、配列数式(スピル式)と テーブル機能です。

と、いうことでコレを次回やりたいと思います。



Googleフォームの回答をリンクさせたGoogleスプレッドシートを使いこなすための数式・・・は次回へ!

Googleフォームの主にGoogleスプレッドシートへの回答リンク機能を中心に 基本的なことを書いただけで今回は終わってしまいました。

今回の基本を踏まえて、次回こそは Googleフォームの回答リンクスプレッドシートで使える実用的な数式 について書きたいと思います!

いいなと思ったら応援しよう!

mir
チップ大歓迎です。やる気がアップしますw