2025.04.05
使えないと非効率的!社会人なら知っておきたい ChatGPTを使ったExcel・スプレッドシートの自動化

はじめに
本稿はChatGPTを使いながら、どのようにしてExcelとスプレッドシートの自動化をするのかについて解説しています。
Excelとスプレッドシートは社会人になると必須のビジネスツールですが、自動化できている人は少ないと思います。日々の業務の中で同じことを繰り返していたり、自動化できたりすることが沢山あり、これらを自動化できれば、時間が生まれてより他のタスクに時間を避けるようになると思います。
幸いにも現在は生成AIの進化が目覚ましく、プログラミングの知識が一切なくても自動化できるようになりました。
本稿が少しでも助力になれば幸いです。
目次
VBAとGASとは
VBAとGASはプログラミング言語の一つです。
VBAとは
VBAとは正式名称がVisual Basic for Applicationsで、Microsoft Officeのアプリケーションの機能を拡張できるプログラミング言語です。
これを使うことにより、Excelのマクロ機能が使えます。実際、マクロ機能はVBAを使わずとも使用できるのですが、VBAを使った方がより柔軟で複雑なマクロ機能を使えるようになります。
マクロ機能とは
一般にマクロ機能とは、アプリケーションソフト上で操作手順を記録して、複数の手順をまとめて一度に自動実行できる機能です。特にExcelに関して言えば、何度も行うような作業(セルの大きさを揃える、セル内の文字の色を変える、セル内の文字のサイズを変えるなど)をまとめて一度に自動実行できます。
マクロ機能を柔軟に使えるようになり自動化ができれば、日々のExcel業務の負担を大幅に減らすことが可能です。
GASとは
GASとは正式名称がGoogle Apps Scriptで、Googleのサービス(Gmail、Googleスプレッドシートなど)と連携して、業務の自動化や拡張機能を実現できます。スプレッドシートにはマクロ機能と明確に呼ばれているものはなく、GASを書いて実行するだけでマクロのようなことを実現できるので、先のVBAより取っ付きやすいです。
スプレッドシートに限ったことではないですが、Googleサービスはインターネット環境で保存されるので、どのデバイスであっても同じスプレッドシートにアクセスできます。もちろん、GASもネット環境にさえいれば、編集できます。ここはExcelとは大きく異なるスプレッドシートの利点です。
業務の効率化を目指すなら、malna株式会社へ
VBA、GASの概要について解説いたしましたが、「実際に自社で活用できるのか?」「導入にあたって何が必要なのか?」とお悩みの方も多いのではないでしょうか?
malna株式会社では、生成AIの専門家が、貴社の実現したい内容を基に、最適なAI導入のご提案とご支援を行っております。
- 社内でも生産性が30%アップした実例をもとに、AI活用のノウハウを提供
- テクノロジー/マーケティング視点を持った専門家が直接支援
- AIの導入/定着まで一気通貫でご支援
まずは無料相談にて、社内導入の流れや貴社の現在のお悩み等、お気軽にご相談ください。
VBAとGASでできること
VBAとGASでできることは、先に説明したようにマクロ機能で何ができるかということと同義です。以下ではマクロ機能で何ができるのかを詳しく説明します。
平たく言ってしまえば、マクロ機能はなんでもできます。ただ、なんでもできますと言っても実感が湧かないと思いますので、特にExcelやスプレッドシートでめんどくさい業務が改善される例を紹介します。
例1:同じもの(または一致しないもの)を探す
別々のシートに顧客データが入っているとします。一方は代官山店の顧客データで、もう一方は恵比寿店の顧客データとします。そこで、二つの店舗の共通顧客を見つけたいと思った時、手作業で逐一確認するのは大変ですよね。
顧客データが100名程度なら頑張ればできますが、1000名またはそれ以上では人間では不可能です。そこでマクロ機能を使えば、2店舗の共通顧客を割り出して新しいシートに書き出すことができます。
例2:毎月の売上報告書を作成
毎月の売上データをコピー&ペーストして、ピボットテーブルを作成。そして、見やすいようにグラフも作成して、PDFで出力。そして上司にメールで送信。これもマクロ機能を使えば、ワンクリックで完了します。
さらに、手作業で行うコピー&ペーストはミスする可能性を伴いますが、マクロ機能であればそういったミスは起こり得ません。
例3:Webからのデータ取り込みとデータの整形
例えば、Webから為替や株価を手動でコピーして、Excelやスプレッドシートに貼り付け、それを分析できるように整えてピボットテーブル等で分析する。このような業務も一々ブラウザとExcelを行き来したり、コピーミスがあったりと手作業では大変かつ集中力が必要です。
これも、マクロを使えばWebからの情報取得とデータの整形までをワンクリックで行うことができます。
ChatGPTを使ったコードの書き方
ChatGPTに依頼する文章のことをプロンプトと言います。VBAでもGASでもプロンプトの書き方は大きく変わりません。以下のように書きます。
まず、VBA(またはGAS)を書いてください。と依頼してください。
続いて、実現したいマクロの内容をできるだけ詳細に記述します。ここでの注意点は、どこにどのデータが入っていて、どこにどのデータを出力したいのかを詳しく書くことです。
具体的には
「B列に顧客の名前、C列に顧客の住所、D列に顧客のメールアドレスが入っています。…。新しいシートのA1に出力してください」
のように書きます。列、行、そしてシート名まできちんと書いてあげると、良いコードが得られやすいです。
列や行、シート名を書かないと、ChatGPTは一般的なシートに沿ってコードを出力するので、それを貼り付けてもうまく行かないことがほとんどです。
また、プロンプト全般に言えることですが、それやこれなどの指示語は多用せず、極力具体化すると良いコードが得やすいです。
こうして、コードが得られたら下記に書くやり方に従って、コードを実行します。
実際一度でうまく行くケースは稀で、何度もChatGPTと対話を重ねて要望にあったコードにしていきます。この際も、極力具体化して伝えることは必須です。
VBAの使い方
ステップ1:Excel上に開発タブを表示させる
Excelの設定等をいじらず、デフォルトの状態で使用している場合、Excelの上部にあるメニューバーに左から“ホーム”、“挿入”、“描画”と続いてると思いますが、そこに“開発”を表示させます。
MacOSではExcelを表示していると画面の一番上に左から“Appleマーク”、“Excel”と並んでいます。
その“Excel”をクリックして、“環境設定”をクリックしてください。するとポップアップ画面が表示されます。その中の“リボンとツールバー”をクリックします。右側の“リボンのカスタマイズ”を下にスクロールすれば、”開発”があるのでチェックボックスにチェックを入れてください。
これで最初の画面に戻れば、“開発”が表示されているはずです。
ステップ2:コードの記入
“開発”をクリックすれば、左側に“Visual Basic”があります。それをクリックすると、新しいポップ画面が表示されます。ポップ画面の名前は“Microsoft Visual Basic”です。
青枠の中にExcelのシートが並んでいます。そのうちマクロ機能を使いたいシートを右クリックします。そして、挿入をクリックし、標準モジュールをクリックすると、コードを入力できる画面が表示されるので、そこにChatGPTが出力したコードをペーストすれば完了です。
最後に赤枠で囲まれた再生ボタンを押せばコードが実行されます。
このとき、注意点が2つあります。
- マクロ機能で実行した操作については戻るボタンで戻ることができない不可逆的な操作です。
- マクロ機能を使うと、Excelの保存形式が変わります。普通は.xlsxですがマクロを使用すると.xlsmに変わります。保存する際に注意画面がでるので、それに従えば大丈夫です。
GASの使い方
GASコードの実行の仕方を解説します。
マクロ機能を実行したいスプレッドシートを開きます。画面上部に左から“ファイル”、“編集”、“表示”、“挿入”と続いて、“拡張機能”があります。
その拡張機能の中の“App Script”をクリックすると、新しいタブが開きます。こちらはVBAのような細かい操作をすることなくコード入力画面になっています。
すでに書かれているコードをすべて消して、ChatGPTの出力結果をペーストすれば完了です。
GASではコードの保存が必須です。保存した後にコードを実行してください。
最後に一つ大きな注意点があります。
コードを実行する際に、Googleのログイン等を求められる場合があります。その中に、途中でセキュリティ的に安全ではない可能性がありますと警告が出ます。その際、画面上の目立つボタンをクリックしてしまうとコードが実行できないので、画面左下の小さく書かれている“安全ではないことを承認します”というような内容のボタンをクリックしてください。
メリット
このメリットは2つあります。
プログラミングの知識が必要ない
ChatGPTにコードを書いてもらっているため、プログラミングの知識が一切不要です。新しく勉強することなくプログラミングが使えます。
チャット形式で対話しながら逐一進められる
コードを実行してみて納得のいかないところがあれば、ChatGPTに言えば改良したコードを改めて出力してくれます。
注意点
生成されたコードが自分のニーズに100%マッチしているとは限らない
これについてはメリットとも被りますが、ChatGPTが出力したコードが正しいものとは限らないので、自分でどのような操作が行われたのか確認しなければなりません。
情報の流出を防ぐ必要がある
先ほど、プロンプトはできるだけ具体的に書いた方が良いと書きました。しかし、具体的に書きすぎるあまりデータの内容までプロンプトに含めてしまうと、最悪の場合情報漏洩につながってしまう可能性があります。
まとめ
適切にChatGPTを使い、マクロ機能を自由自在に使えるようになれば業務を効率化できることは間違いありません。最初は取っ付きづらいかもしれませんが、慣れれば、毎日使うようになると思います。
業務自動化をさらに加速したいなら、malna株式会社へ
ChatGPTを活用して、VBA、GASの機能を活かす具体的な方法にいて解説しましたが、AIは他にも様々なところで活用することができ、業務の効率化を図ることができます。
malna株式会社では、生成AIの専門家が、貴社の実現したい内容を基に、最適なAI導入のご提案とご支援を行っております。
- 社内でも生産性が30%アップした実例をもとに、AI活用のノウハウを提供
- テクノロジー/マーケティング視点を持った専門家が直接支援
- AIの導入/定着まで一気通貫でご支援
まずは無料相談にて、社内導入の流れや貴社の現在のお悩み等、お気軽にご相談ください。
無料相談はこちら- malnaのマーケティングについて
-
弊社ではメディアやSNSなど総合的な支援が可能です。
媒体ごとに違うパートナーが入ることもなくスピーディな意思決定が可能です。
ご不明点や不安な点等ございましたらお気軽にお問い合わせください。 - サービス資料はこちら 詳しく見る