「いま、どれくらい？」アンケートのリプライ状況をタイムリーに知る方法を#ChatGTPに聞いてみた

![アンケートの回答状況をお知らせしてもらえると嬉しい.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2727864/305cae7e-bbac-9d7c-a57e-aa408f866e93.png)

## :beginner:アンケートを発信したけど、回答の進捗が気になりますよね。
今回は、発信と回収の状況をタイムリーに知りたいと思いトライしてみました。
なぜかというと、上司によく聞かれるんです。「いま、どのくらい？」って:thinking:
質問への反応は気になるところで、場合によっては反応の早さで興味の度合いが見て取れたりします。
手元のデバイスからデータを焦って引っ張り出したりすることなく、スマートに答えられたら、カッコイイではないですか。
自分からサッと報告することで、評価アップも期待したりして:laughing:
そんな、「不埒な気持ち」とともに「進捗管理は基本中の基本」なので、`ChatGTP`にお願いしてみました。

**使用ツール**
1. Google From
2. Google Spread Sheet
3. Gmail
4. Google Apps Script

この3つを`GAS`を使って連携させ、配信から回答回収・進捗通知までを組むことにしました。

### まずは、ChatGTPに聞いてみることにしました。
アンケートメール`Google Form`の自動配信設定を3名に想定し、プロトタイプを作ることにしました。`GoogleForm` でシンプルなアンケートを作成しました。
![スクリーンショット (27).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2727864/a3526d89-3777-4801-80f9-fed3443090ad.png)

#### ここでChatGTPの登場です。
![スクリーンショット (14).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2727864/6a1d2520-e057-12cb-e574-5e712d07e43a.png)

とほほ:laughing:、「リンクを貼ってメールする」という、いつもやってることでした。
プロトタイプからバージョンアップさせ、300通まで増やしていきたいと思っているので、これでは、ダメです。
言葉が足りなかったようです。:disappointed_relieved:

GASを使って一斉配信を組みたいので、更に質問です。
![スクリーンショット (15).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2727864/fda66f11-bd14-ca30-6adf-2eb1e306237e.png)

やりたいことを理解してもらったようで、スクリプトを教えてもらえました。
![スクリーンショット (16).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2727864/cfe8cf72-6e1e-051c-3de8-e3b36a10ad93.png)

これで、一斉配信は出来そうです。実行を押して、成功‼
![スクリーンショット 2024-05-07 16.59.21.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2727864/62b2d521-a475-1c68-0cab-7dd8b16ceea5.jpeg)

#### つぎのパートは、配信したアンケートに対して、リプライを数を配信者のメールへタイムリーに送る設定です。
`Google Form`の回答は、`spreadsheet`にまとめられるので、このまとめられた`spreadsheet`を活用して、回答件数を収集できると思いました。

![スクリーンショット (17).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2727864/63a96efc-ea91-6dcd-f407-68cff5ee137c.png)

![スクリーンショット (18).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2727864/1730cdb2-bc97-5c09-169c-cf4f7e7dd1ee.png)

手順に従って、作成しました。

![スクリーンショット 2024-05-07 18.03.46.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2727864/8c12f9f1-60e7-0ef5-dc4d-fa1688261a20.jpeg)

おおよそイメージしていた返答がかえってきました。素っ気ない返事ですが、script内のemailBody='回答数'にコメントを足せば、改善が出来ると思います。

#### あれあれ:sweat:、何件アンケートを送ったかわからないと、回答数が多いのか、少ないのか、完了したのかがわからないではないですか:sweat_drops:
個別の回答数がわかるともっと良いので、修正を**ChatGTP**にお願いしました。

    // 発信件数を取得するためのスプレッドシートを開く
    var emailSheet = SpreadsheetApp.openById('1aM1ppYBgJxhElybATdm4SHNkfAKZ1-r_UlrL8kdEc1o');
    var emailDataRange = emailSheet.getSheetByName('test1').getDataRange();
    var emailSentCount = emailDataRange.getValues().filter(row => row.some(cell => (typeof cell === 'string' && cell.trim() !== '') || typeof cell === 'number')).length;

    // 集計結果を取得
    var sheet = SpreadsheetApp.openById('1nYOFFxdPpS175UnnbJwrihpg2w2oZpjcLVA2X0Ks84M');
    var summarySheet = sheet.getSheetByName('test3');
    if (summarySheet) {
      var summaryValues = summarySheet.getRange('B1:B3').getValues();

      // メールを作成
      var emailAddress = 'gonchichi21@gmail.com';
      var emailSubject = '回答状況のお知らせ';
      var emailBody = '発信件数: ' + emailSentCount + '件\n' +
                      '回答数: ' + responseCount + '件\n' +
                      '・元気いっぱいです: ' + summaryValues[0][0] + '\n' +
                      '・ふつうです: ' + summaryValues[1][0] + '\n' +
                      '・ちょっとしんどいです: ' + summaryValues[2][0];

      // メールを送信
      MailApp.sendEmail(emailAddress, emailSubject, emailBody);
    } else {
      throw new Error('指定されたシートが見つかりませんでした。');
    }

リトライ:bangbang:
結果

![94931 (1).jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2727864/fa247ae9-3a7d-c9b9-fac1-ae6140d02f99.jpeg)

## ChatGTPで開発時間の削減はできたか
GASに詳しくない自分でも、何とか作ることは出来ました。
が、そもそも、scriptを読めないので、何が間違っているかを`ChatGTP`に何回も聴きました。エラーコードをそのまま貼りつけて、質問したりすること、その数50回～60回。
きっと、慣れてくればサクッと出来るのでしょう:sweat:

### 言葉足らずだとダメでした😓
なんとなくのイメージでザックリ質問してもいい答えは返ってこないし、言葉が足りないと、ズレた回答が戻ってきます。まずは、頭の中を整理して、細かく伝えないとならないと実感しました。あらためて、伝えるって大事だなって思いましたし、自分の話を理解してもらっている周囲のメンバーに感謝です:bow_tone1:

#### ChatGTPにおねがいしたいこと
間違いやすいところに「注意してね。」とコメントして欲しい。「ここは、みんなよく間違えるから注意ポイントです」って
聴いたことには、一生懸命答えてくれて助かるけど、それ以外は・・・。
でも、上手くできたので「ありがとう」って伝えたら、喜んでくれました。

### こんなに何回も聴いても一生懸命つきあってくれる安心感は替え難いですネ😀。