はじめに
Excelの業務効率化で、よくVBA使いますよね、みなさん。
でも、VBAって癖強言語だから意外とすんなりロジック書けなかったりして、、、
ふたを開けてみると、手でやるのとそんな作業時間変わんなかったり、とかザラですよね。。。
そう、VBA書くのってめんどいんです。そのめんどい作業を効率化するためにchatGPTを使いましょう。
どれを使えばいいの?
最近Qiitaを眺めてたらこんな記事があったので参考にしました。
えっ、まだChatGPT使ってんの? Bingは無料でGPT-4使えますよ!
もうBing一択ですね。
GPT先生に質問してみた
いや、雑w
さすがにこれじゃ欲しい回答得られないだろ・・・
検証してみた
まずはテストデータを用意
シート2の、「人気度」と「価格」部分にシート1の「おいしさ」と「料金」が入る想定。
シート2は五十音順に入れ替えているので、そのままだとコピペできない。
さっそく走らせてみる。
エラーかよ!!!
よく見ると、B1セルのヘッダー部分の名称(名産品)で検索してしまったために、
シート1の列Aに該当セル見つからずMatch関数で0を返してしまい、If IsNumeric~の処理で行番号を指定する際にご臨終となったようだ。
なので、参照範囲を変えることでいったんは切り抜ける。
(レコード中にもマッチしないセルが存在することもあり得るので、本来ならエラーハンドルのやり方を変えるか別の関数を使うかした方がいい)
ここも先生にお願いしましょう
このコードを参考に、参照範囲を変更すると・・・
ws1.Range("B1:B")をws1.Range("B2:B")に変えるだけで良さそう。
気を取り直してもう一度。
できてる!!!!
ちゃんとおいしさと名産品も反映されてそう。
やるじゃん、Chat-GPT。
おわりに
いかがだったでしょうか。
上手く使えるか不安なChat-GPTですが、意外と使いこなせそうですね。
ポイントとしては、100%GPT先生の出力に頼るのではなく、
適宜修正する前提で使う、ということですね。
雑な指示に対しても、ほぼ正確なコードで返してくれるので、
かなり時短ができそうというのが今回の所感でした。
みなさんも試してみては?