Excel自動化のためにマクロを汲みたいと考える人も多いはずです。しかし、VBAに自分でコードを書き込めないとお悩みの方も多いのではないでしょうか。
そこでこの記事では、AIアルゴリズム「ChatGPT」を用いて手軽にマクロを作成する方法について解説します。どのように作成するのか、作成手順も解説しているので、ぜひ参考にしてみてください。
また、ChatGPTの概要から学びたいという方は以下の記事がおすすめです。ChatGPTの特徴について詳しく学べます。
マクロ作成にお悩みならChatGPTがおすすめ
マクロを勉強して、Excelを自動化したいと考える方も多いでしょう。しかし、勉強する時間がないとお困りの方もいるはずです。
それならぜひ、マクロ作成を効率化するために「ChatGPT」を活用してください。まずはChatGPTの特徴や活用すべき理由について紹介します。
①ChatGPTとは?
ChatGPTは、AIアルゴリズム開発を行うベンチャー企業「OpenAI」が開発したAIサービスです。まるで人間のような受け答えができることはもちろん、近年ではライティング、プログラミングにも活用されています。
基本無料で利用でき、マクロ作成としても十分な能力を発揮します。Googleアカウントですぐに登録できるので、マクロ作成に活用してみてはいかがでしょうか。
➁自動生成可能
ChatGPTの魅力は、質問や指示の回答を自動生成してくれることです。
作成したいマクロの条件を与えて指示出しするだけ、手軽にマクロを生成してくれます。また、出力されたマクロをコピペするだけですぐにマクロを実行できるのがポイントです。
条件だけまとめてしまえば、ほんの1分程度でマクロを作成できます。勉強の手間なく利用できるため、ぜひChatGPTに登録してみてください。
③専門知識不要
ChatGPTは、専門知識を持たずに操作できます。
マクロ作成を指示する際に利用するのはマクロの「条件」を指示するだけなので、初めての方でもすぐにマクロを作成できるのが魅力です。
※指示する条件が抽象的だと、出力されるマクロがうまく動作しない場合があります。ChatGPTに指示する際は、必ず細かく条件設定を行ってください。
ChatGPTによるマクロ作成例
ChatGPTを用いてどのようなマクロを作成できるのか、作成例とその指示メッセージを整理しました。
画像付きで解説しているので、マクロ作成の参考にしてみてください。
作成例①日付算出マクロの設定
こちらでは、日付を自動で算出してくれるマクロをChatGPTに作成させてみました。
まず、ChatGPTに次の指示文を与えます。
以下に示す【条件】をもとに「その日の日付を自動で算出してくれるVBAコード」を作成してください。【条件】
・日付の形式をyyyy/mm/ddとする
・日付情報をポップアップで表示する
結果として、次のマクロが出力されました。
Dim currentDate As Date
Dim formattedDate As String' 現在の日付を取得
currentDate = Date' 日付を指定の形式に整形
formattedDate = Format(currentDate, "yyyy/mm/dd")' 現在の日付を表示
MsgBox "現在の日付は " & formattedDate & " です。"
End Sub
実際にVBAに読み込んで保存。
Excel上で呼び出してみた結果、次のように指示通りのポップアップが表示されました。
作成例➁入力項目から半角スペースを削除するマクロの設定
こちらでは、入力項目から半角スペースを削除するマクロをChatGPTに作成させてみました。
まず、ChatGPTに次の指示文を与えます。
以下に示す【条件】をもとに「指定した入力項目から半角スペースを削除するマクロ」を作成してください。【条件】
・セルを選択する項目がほしい
・出力したい場所を指定したい
結果として、次のマクロが出力されました。
Dim selectedCell As Range
Dim outputCell As Range
Dim inputText As String
Dim modifiedText As String' ユーザにセルを選択してもらう
On Error Resume Next
Set selectedCell = Application.InputBox("テキストが入力されているセルを選択してください", Type:=8)
On Error GoTo 0' キャンセルされた場合や選択されなかった場合の処理
If selectedCell Is Nothing Then
MsgBox "セルが選択されませんでした。"
Exit Sub
End If' 選択したセルの値(テキスト)を取得
inputText = selectedCell.Value' 半角スペースを削除して新しいテキストを作成
modifiedText = Replace(inputText, " ", "")' ユーザに出力セルを選択してもらう
On Error Resume Next
Set outputCell = Application.InputBox("変更したテキストを出力するセルを選択してください", Type:=8)
On Error GoTo 0
If outputCell Is Nothing Then
MsgBox "出力セルが選択されませんでした。"
Exit Sub
End If
' 変更したテキストを指定のセルに表示
outputCell.Value = modifiedText
MsgBox "半角スペースを削除してテキストを出力しました。"
End Sub
参考として、夏目漱石の「吾輩は猫である」の文章を入力してみました。
部分的に半角スペースを設けています。
まずはポップアップが表示され、半角スペースを消したい項目の指定を指示されます。
また、セル指定が終わりOKを押すと、以下のように、出力したいセルのポップアップも表示。
結果として、指定したセルに半角スペースを削除した文章が出力されました。
おわりに
この記事では、ChatGPTを使ってExcelマクロを作成する方法について紹介しました。
簡単な手順でVBAコードを生成でき、コピーしてすぐに利用できるのが、ChatGPTを使ったマクロ生成の魅力です。
指示嗜好によってはエラーが起きるケースもありますが、根気よくトライアンドエラーを繰り返せば、数回で問題を解決できます。
また、ChatGPTの概要から学びたいという方は以下の記事がおすすめです。ChatGPTの特徴について詳しく学べます。