コンセプト
- 文法は覚えない: Dim や For Next の意味を知らなくても動けば正解。
- 読むのは日本語だけ: コードは読まず、AIへの「指示(プロンプト)」を磨く。
- デバッグもAI任せ: エラーが出たら、エラーメッセージをAIに投げ返すだけ。
講座カリキュラム構成(案)
- 【マインドセット】 なぜ「覚えなくていい」のか?あなたは「建築家」、AIは「大工」。Excelの「開発タブ」を出す(これだけは覚える)。VBE(黒い画面)への貼り付け方・実行方法。
- あなたは「建築家」、AIは「大工」。
- Excelの「開発タブ」を出す(これだけは覚える)。
- VBE(黒い画面)への貼り付け方・実行方法。
- 【実践Lv.1】 データ整形(表記ゆれの統一)
- 【実践Lv.2】 ファイル分割(部署ごとに別ブックで保存)
- 【実践Lv.3】 請求書PDF一括自動発行(差し込み印刷の自動化)
- 【トラブル対応】 エラーが出たときの「魔法の言葉」
教材コンテンツ:例題・プロンプト・コード
以下は、そのまま講座のデモとして使える3つの実例です。
実践Lv.1:データ整形の自動化
【課題】 システムから吐き出したCSVデータ。電話番号にハイフンがあったりなかったり、半角全角が混じっていて、VLOOKUPでエラーになる。手作業で直すのが面倒。
【プロンプト(AIへの指示)】
ExcelのVBAコードを書いてください。 現在開いているシートのA列に「電話番号」が入っています。 以下の処理を行ってください。
- A列の値をすべて「半角」にする。
- A列の値に含まれる「ハイフン(-)」をすべて削除する。
- 2行目から最終行まで処理する(1行目は見出し)。
コードには日本語でコメントをしっかり入れてください。
【生成されるコードの例】
Sub FormatPhoneNumber()
Dim ws As Worksheet
Dim lastRow As Long
Dim i As Long
Dim cellValue As String
' 現在のアクティブシートを設定
Set ws = ActiveSheet
' A列の最終行を取得
lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
' 画面更新を停止(高速化)
Application.ScreenUpdating = False
' 2行目から最終行までループ処理
For i = 2 To lastRow
' セルの値を取得
cellValue = ws.Cells(i, "A").Value
' 1. 全角を半角に変換 (vbNarrow)
cellValue = StrConv(cellValue, vbNarrow)
' 2. ハイフンを削除
cellValue = Replace(cellValue, "-", "")
' 変換後の値をセルに戻す
ws.Cells(i, "A").Value = cellValue
Next i
' 画面更新を再開
Application.ScreenUpdating = True
MsgBox "電話番号の整形が完了しました!"
End Sub
