みなさん、おはようございます!タカハシ(@ntakahashi0505)です。
こちらの記事は、タカハシが音声メディアVoicyの「スキルアップラジオ」にて放送した内容から、ピックアップしてお届けします!
今回のテーマは、ChatGPTでExcel操作の自動化プログラムをつくる3つのパターンです。
なお、以下で実際にお聴きいただくこともできます!
では、よろしくお願いいたします!
プログラミングの自動化が容易に
生成AIの登場によって、プログラミングがものすごく楽になりました。
プログラミングを本職としない非IT職の方でも、たとえばエクセル仕事を自動化したいといったときに、VBAというプログラミングを使うことで、簡単に自動化プログラムを作成することができます。
もちろんある程度の学習は必要ですが、その学習自体もChatGPTを使って楽に快適に学習することができるようになりましたし、基礎を身に付けてしまえば、ChatGPTの力を借りてどんどんプログラムを作ることができるようになります。
ChatGPTを使ったExcel操作プログラムの作成パターン
そんなExcelを操作するプログラムをChatGPTを使って作るパターンですが、実はいくつか覚えておくと良いものがあります。今日は、そのパターンを3つ紹介していきたいと思います。
- 手順を指示する
- 質問をしてもらう
- ファイルをアップロードする
この3つです。おすすめは3番目のファイルアップロードですが、この1番から3番、エッセンスとしてはとても重要なので、どのパターンも知っておいてほしいと思います。
手順を指示する
たとえば、選択範囲を新しいシートにコピーするプログラムを作りたいとします。
エクセルシート上のあるセル範囲が選択されているとします。その選択範囲を新しいシートを作成して、そこにコピーするプログラムです。
実はそのままプロンプトに適当に入力してもそこそこ作ってくれます。たとえば、「選択範囲を新しいシートにコピーするプログラムをVBAで作成してください」といった具合です。これでもある程度作ってくれます。
ただ、運が割と微妙に違ったり、望ましくない結果になってしまうことがあります。
たとえば、僕がやった時には「新しいシートを作る」「選択範囲を変数にコピーする」という手順でChatGPTがプログラムを作ってくれたのですが、これだと実は問題があります。
というのも、元々選択していたセルの範囲が新しいシートを作った時点で解除されてしまうという問題が出てきます。なので、コピーしたい選択範囲がちゃんとコピーされないプログラムができてしまったのです。
この時に手順を指示すると良いということです。たとえば、プロンプトとして「以下の手順で動作するVBAのプログラムを作ってください。
- 選択範囲を変数にコピーする
- 新しいシートを作る
- 新しいシートにコピーした選択範囲を貼り付けする
このように指示することで、正しい手順でプログラムを作ってくれるわけです。これによって、より望ましい結果を得やすくなるということです。
質問をしてもらう
次のパターンは、質問をしてもらうというものです。
たとえば、エクセルのシート上にあるメンバーのリストがあるとします。そのメンバーのリストのうち、年齢が30歳以下のものを別のワークブックにコピーするプログラムを作成します。
これもそのままプロンプト入力してもある程度作ってくれます。「Excelのメンバーリストのうち、年齢が30歳以下のものを別のワークブックにコピーするVBAプログラムを作成してください」と入力します。これでもうまく作ってくれます。
ただ、操作の対象となるワークブックやシート、それから列の構成は、ChatGPTが勝手に仮定したもので動くようなプログラムになっていました。
たとえば、対象のワークブックは現在のワークブック。シートはシート1。年齢のデータはB列に入っている、という仮定です。
もしその仮定が実際のワークブックやシート構成と異なっているのであれば、そこを見つけて直してあげる必要があります。この点、2つ目のパターン質問をしてもらう。これを使うことで防ぎやすくなります。
具体的には、「これこれのVBAプログラムを作成してください。その後に必要な具体的な質問をしてください」と付け加えてプロンプトを送信します。すると、ChatGPTからいくつかの質問がまずやってきます。
たとえば、
- どのワークブックからメンバーデータをコピーしたいですか?
- メンバーデータはどのシートにありますか?シートの名前はなんですか?
- データのどの列に年齢が記録されていますか?その列の番号はなんですか?
この質問に番号付きで回答していくわけです。
- 現在アクティブのワークブックです
- シート1です
- 2番です
このように回答すると、その回答した情報を反映してプログラムを作ってくれます。
これはすごく便利で、プログラムを作成するにあたってどの情報を与える必要があるのか、それすらもChatGPTに考えてもらうことができるのです。
これはとても便利なので、ぜひあちこちで活用していただきたいと思います。
ファイルをアップロードする
さて、1番おすすめの3つ目のパターンです。ファイルをアップロードするというものです。
ChatGPTは今年5月のアップデートで、回数の制限はあるものの、フリープランでもExcelファイルをアップロードして、それについてChatGPTと会話することができるようになりました。
これはExcelを自動化するプログラムを作る上で非常に強力な機能です。
たとえば、先ほどの例でメンバーデータのうち年齢が30歳以下のものを別のワークブックにコピーする場合、元データが入っているExcelファイルをアップロードします。
ChatGPTの画面のクリップアイコンから、もしくはファイル自体をドラッグアンドドロップでファイルをアップロードできます。
そして、そのファイルをアップロードした後に、「Excelのメンバーリストのうち年齢が30歳以下のものを別のワークブックにコピーするVBAプログラムを作成してください」とプロンプトを追加して送信します。
すると、アップロードしたExcelファイルの状態。つまりワークブックやシートの情報をChatGPTが解析し、それを元にプログラムを作成してくれます。
まとめ
このように3つのパターンを駆使すると、ある程度VBAの基礎ができていれば、様々なエクセル仕事の自動化プログラムを簡単に作成することができます。
世界が変わると思いますし、楽しんでいただけるのではないでしょうか。
今回お伝えしたパターンは3つです。
- 手順を指示する
- 質問をしてもらう
- ファイルをアップロードする
ぜひご活用いただければと思います。
ということで、今日はVoicy「スキルアップラジオ」の放送から「ChatGPTでExcel操作の自動化プログラムをつくる3つのパターン」をお届けしました。
タカハシのVoicyの放送はこちらからお聴きいただけます。
チャンネルのフォロー、コメント、SNSでのシェアなどなど、楽しみにお待ちしております。
では、また。