【AIとのやりとり記録①】AIにVBAの合計コードを作らせてみた結果|実務で使える?(Copilot)

最近は、

「AIがVBAコードも作れる」

とよく聞くようになりました。

確かに便利そうですが、

・本当に実務で使えるレベルなのか
・初心者でも活用できるのか
・そのまま使えるコードが作れるのか
実際に試してみないと分かりません。

そこで今回は、

「A列の数値を合計するVBAコード」

をAIに作成してもらい、実際に動かしながら検証してみることにしました。

AIはどこまで使えるのか。

そして、人間はどこまで指示を出す必要があるのか。

実際に試した結果をレポート形式でご紹介します。


今回のテーマ

今回AIにお願いした内容はとてもシンプルです。

A列の数値を合計するVBAコードを作ってもらいます。

まずは実際にAIへ質問してみました。


AIへ質問した内容

【AIへの依頼内容】

ExcelでA列の合計を出すVBAコードを書いてください。

できるだけ初心者向けにお願いします。

すると、数秒でコードが作成されました。


AIが作成したコード

AIが作成したコードは、以下の流れになっていました。

・A列の最終行を取得
・A列のデータを合計
・合計結果を表示
初心者でも理解しやすい、非常にシンプルなコードでした。

▼実際のコードはこちら


実際に動かしてみた

出力されたコードをExcelへ貼り付けて実行してみました。

結果は…

✅ 正しく合計が計算される

✅ エラーなし

✅ 処理速度も問題なし

正直な感想としては、

「思った以上に普通に使える」

という印象でした。

結果がメッセージボックスで表示されました。


ただし、私が欲しかったものとは少し違った

その時に思ったのが、

「えっ?メッセージボックス?」

ということです。

私が本当に欲しかったのは、

メッセージボックスで結果を表示することではなく、

B3セルへ合計結果を表示すること

でした。

つまり、

AIは間違ったコードを作ったわけではありません。

私の依頼内容が足りなかったのです。


今回AIへお願いした内容は、

「A列の合計を出すVBAコードを書いてください」

だけでした。

これでは、

  • セルへ表示する
  • メッセージボックスへ表示する
  • シートへ出力する

などの細かい条件が伝わっていません。

そのためAIは、

「結果を表示する方法の一例」

としてメッセージボックスを選んだのだと思います。


そこで追加でお願いしてみた

そこで今度は、もう少し具体的に依頼してみました。

  • A列の合計を計算して、結果をB3セルへ表示してください。

するとAIは、すぐに修正版のコードを提案してくれました。


AIを使って分かったこと

今回のやり取りで感じたのは、

AIは言われたことを忠実に実行する

ということです。

逆に言うと、

人間が曖昧な指示を出すと、

AIも曖昧な答えになりやすいということです。

例えば、

❌ 合計を出して

ではなく、

⭕ A列の合計を計算してB3セルへ表示して

と具体的に伝える方が、欲しい結果に近づきます。


今回の検証は、

「AIがどこまでコードを書けるか」

だけではなく、

「人間がどのように依頼するかが重要」

ということを学ぶ良い機会になりました。。


そしてさらに業務的な作業としてまたまた追加のお願い

今度は、

✅ 合計値(セルB3に表示)

✅ 処理件数(A列に入っている件数をメッセージボックスに表示)

の両方が表示されるようにお願いをしました。

そこで今度は、もうさらに依頼してみました。

  • さっきの計算方法は残しておいて、追加でメッセージボックスで何件分の合計数なのか知りたい

するとAIは、すぐに修正版のコードを提案してくれました

改善によるメリットは大きいです。

・処理規模が把握できる
・想定外のデータに気づきやすい
・利用者に結果が伝わりやすい

ちょっとした改善ですが、実務では非常に重要です。


今回試してみて感じたこと

今回の検証で感じたことは3つあります。

① AIはすぐにコードを作成してくれる

今回のような合計計算であれば、数秒でVBAコードを作成してくれました。

初心者でも、まず動くコードを確認できるのは大きなメリットだと感じます。


② AIは間違っていたわけではない

最初に作成されたコードは、メッセージボックスへ結果を表示するものでした。

私はB3セルへ結果を表示したかったため、

「思っていたのと違う」

と感じました。

しかし、よく考えるとAIが間違えたのではなく、私が表示場所を指定していなかっただけでした。


③ 追加の指示で結果が大きく変わる

AIは一度で完璧な答えを出すとは限りません。

しかし、

・B3セルへ表示したい
・件数も表示したい

など、具体的に伝えることで回答の精度は大きく向上します。

AIを使うときは、一度で終わらせるのではなく会話しながら改善していくことが大切だと感じました。

今回のAI評価

項目評価
コード品質★★★★☆
実務利用度★★★☆☆
初心者向け★★★★★
総合評価★★★★☆

今回のコードは問題なく動作し、合計も正しく計算できました。

ただし、私が求めていた「B3セルへ結果を表示する」という部分までは反映されていませんでした。

しかし、追加で指示を出すことで修正できたため、AIの対応力は十分高いと感じました。


今回の結論

今回の検証で分かったことは、

✅ AIはVBAコード作成の強力なサポートになる

✅ 指示が曖昧だと想定と違う結果になることがある

✅ 追加で会話しながら修正していくことが大切

ということです。

AIは一度で完璧な答えを出すというより、

「会話しながら一緒にコードを作るパートナー」

という使い方が向いていると感じました。


コードを詳しく見たい方へ

今回使用したコードは、解説付きでこちらにまとめています。

VBAコード集(内部リンク)


次回予告

次回は、

「AIに平均値(AVERAGE)のVBAコードを作らせてみた結果」

を検証してみます。

合計計算と比べて、AIがどのようなコードを提案するのか試してみたいと思います。

コメント