9
4

ChatGPT先生に、VBAの面倒くさいマッピング処理を記述してもらった

Last updated at Posted at 2023-10-31

はじめに

Excelの業務効率化で、よくVBA使いますよね、みなさん。
でも、VBAって癖強言語だから意外とすんなりロジック書けなかったりして、、、
ふたを開けてみると、手でやるのとそんな作業時間変わんなかったり、とかザラですよね。。。

そう、VBA書くのってめんどいんです。そのめんどい作業を効率化するためにchatGPTを使いましょう。

どれを使えばいいの?

最近Qiitaを眺めてたらこんな記事があったので参考にしました。
えっ、まだChatGPT使ってんの? Bingは無料でGPT-4使えますよ!

もうBing一択ですね。

GPT先生に質問してみた

image.png

いや、雑w
さすがにこれじゃ欲しい回答得られないだろ・・・

image.png
え?
有能?

検証してみた

まずはテストデータを用意

image.png

image.png

シート2の、「人気度」と「価格」部分にシート1の「おいしさ」と「料金」が入る想定。
シート2は五十音順に入れ替えているので、そのままだとコピペできない。

さっそく走らせてみる。

image.png

エラーかよ!!!

よく見ると、B1セルのヘッダー部分の名称(名産品)で検索してしまったために、
シート1の列Aに該当セル見つからずMatch関数で0を返してしまい、If IsNumeric~の処理で行番号を指定する際にご臨終となったようだ。

なので、参照範囲を変えることでいったんは切り抜ける。
(レコード中にもマッチしないセルが存在することもあり得るので、本来ならエラーハンドルのやり方を変えるか別の関数を使うかした方がいい)

ここも先生にお願いしましょう

image.png

image.png

このコードを参考に、参照範囲を変更すると・・・

image.png

ws1.Range("B1:B")をws1.Range("B2:B")に変えるだけで良さそう。

気を取り直してもう一度。

image.png

できてる!!!!

image.png

ちゃんとおいしさと名産品も反映されてそう。
やるじゃん、Chat-GPT。

おわりに

いかがだったでしょうか。
上手く使えるか不安なChat-GPTですが、意外と使いこなせそうですね。
ポイントとしては、100%GPT先生の出力に頼るのではなく、
適宜修正する前提で使う、ということですね。
雑な指示に対しても、ほぼ正確なコードで返してくれるので、
かなり時短ができそうというのが今回の所感でした。

みなさんも試してみては?

9
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
4