【理論と実践】生成AI(Claude)でExcelマクロを作成
~医療・介護に関わる職員が、安心して、仕事の生産性高く、充実して働ける未来の一助へ~
ご友人等へのメルマガ紹介はこちらから。
https://www.mag2.com/m/0001682907
ーーーーーーーーーーーーーーーーーーー
令和7年1月20日 医療・介護経営の理論と実践 2444号
■生成AI(Claude)でExcelマクロを作成
中神勇輝(なかがみゆうき)
ーーーーーーーーーーーーーーーーーーー
おはようございます。中神です。
【背景と目的】
生成AIのClaudeを活用して、職場で必要なExcelマクロを作成した経験を共有します。
具体的には、部署ごとの報告書について、
表紙シートと報告済み部署のシートのみを自動でPDF化する作業の自動化が目的でした。
【資料の構成】
・表紙シート(「目次」)
C列:部署名
D列:報告状況(「済」で表示)
・各部署の報告シート
部署ごとに個別シートを作成
報告内容を記載
【プロンプトの実例】
最初に使用したプロンプトは以下の通りです。
「Excelのシートのうち、一部をPDF化するための、マクロを組んでくれますか。
「目次」というシートがあります。
C列に、診療科や部署の名前があります。
D列には、記載が済んでいる診療科や部署は、「済」と書いてあります。
「目次」のシートと、「済」となっているシートのみ、
PDF化するマクロをお願いしたいです。いかがでしょうか。」
【その結果】
数回、やり取りをして、以下のとおり、狙い通りのマクロが組めました。
Sub 目次と済シートをまとめてPDF化()
Dim ws As Worksheet
Dim i As Long
Dim lastRow As Long
Dim pdfPath As String
Dim sheetArray() As String
Dim sheetCount As Integer
Dim fileName As String
Dim originalSheet As Worksheet ‘ 元のアクティブシートを保存する変数
‘ 現在のアクティブシートを保存
Set originalSheet = ActiveSheet
‘ Excelファイル名を取得
fileName = ThisWorkbook.Name
‘ 拡張子を除去
fileName = Left(fileName, InStrRev(fileName, “.”) – 1)
‘ PDF保存先のファイルパスを指定 (ファイル名を含む)
pdfPath = ThisWorkbook.Path & “\” & fileName & “.pdf”
‘ シート名の配列を初期化
ReDim sheetArray(0)
sheetCount = 0
‘ 「目次」シートを配列に追加
sheetArray(sheetCount) = “目次”
sheetCount = sheetCount + 1
‘ 「目次」シートの最終行を取得
lastRow = ThisWorkbook.Sheets(“目次”).Cells(Rows.Count, “C”).End(xlUp).Row
‘ 各シートをループ処理
For i = 2 To lastRow ‘ 2行目から最終行まで
‘ D列が「済」の場合
If ThisWorkbook.Sheets(“目次”).Cells(i, “D”).Value = “済” Then
‘ シート名を取得
wsName = ThisWorkbook.Sheets(“目次”).Cells(i, “C”).Value
‘ シート名を配列に追加
ReDim Preserve sheetArray(sheetCount)
sheetArray(sheetCount) = wsName
sheetCount = sheetCount + 1
End If
Next i
‘ 配列のシートをまとめてPDF化
Sheets(sheetArray).Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, fileName:=pdfPath
‘ 元のシートを選択して戻す
originalSheet.Select
MsgBox “PDF化が完了しました。”
End Sub
【実践から得られた知見】
生成AIを活用する際の重要なポイントは以下の通りです。
・最初のプロンプトは簡潔に
要件を簡潔に伝え、まずは対話を始めることが重要です。
・対話を通じた改善
完璧なプロンプトを目指すのではなく、
対話を重ねながら徐々に要件を詳細化していく方法が効果的です。
・気軽な試行錯誤
生成AIとの対話は、気負わずに始めることが大切です。
試行錯誤を重ねることで、求める結果が得られるようになりますね。
以上です。では、また明日(^-^)v
(当該内容は、私の所属する組織とは一切関係はなく、全ての文責は私個人に属します。)
テーマについて、ご要望あれば、コメントをどうぞ。
◇病院経営の見える化について公開講座(動画)の講師をする機会を頂きました。感謝(^_^)
https://hcmi-s.net/weblesson-hcm/jmp_consult_01/ (講座)
https://healthcare-mgt.com/article/iryo/jmp_consulting01/ (紹介)
◇過去の内容、記事はこちらから是非(^-^)
https://wakuwaku-kokoro.net/
◇試験勉強や本の学びをアウトプットしているYouTubeチャンネルは、こちらです(^-^)
https://youtube.com/channel/UC_PiglYG9qTBjlJ3jt3161A
この記事を書いたのは、こんな人。
ーーーーーーーーーーーーーーー
中神勇輝。地方の中小病院に勤務する医事課畑出身の企画部門所属。
中小企業診断士(登録申請中)、医療経営士1級。
趣味は、マラソン、ドラム、家庭菜園、筋トレ(HIIT)、読書。