install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/excel-vba" ~/.claude/skills/majiayu000-claude-skill-registry-excel-vba && rm -rf "$T"
manifest:
skills/data/excel-vba/SKILL.mdsource content
Excel VBA開発スキル
基本方針
- Option Explicit必須
- エラーハンドリング必須(On Error GoTo)
- 画面更新・計算の制御でパフォーマンス最適化
- 変数は明示的に型宣言
標準テンプレート
Sub プロシージャ
Option Explicit Public Sub ProcessData() On Error GoTo ErrorHandler Application.ScreenUpdating = False Application.Calculation = xlCalculationManual ' 処理本体 CleanUp: Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomatic Exit Sub ErrorHandler: MsgBox "エラー: " & Err.Description, vbExclamation Resume CleanUp End Sub
命名規則
- モジュール: mod_機能名
- プロシージャ: 動詞_目的語
- 変数: キャメルケース(接頭辞付き: str, lng, rng等)
よく使うパターン
最終行取得
Dim lastRow As Long lastRow = Cells(Rows.Count, 1).End(xlUp).Row
範囲ループ
Dim cell As Range For Each cell In Range("A1:A" & lastRow) ' 処理 Next cell
配列処理(高速)
Dim data As Variant data = Range("A1:Z1000").Value ' 配列で処理 Range("A1:Z1000").Value = data
パフォーマンス最適化
' 処理開始時 Application.ScreenUpdating = False Application.Calculation = xlCalculationManual Application.EnableEvents = False ' 処理終了時 Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomatic Application.EnableEvents = True
エラーハンドリングパターン
On Error GoTo ErrorHandler ' 処理 Exit Sub ErrorHandler: Dim errMsg As String errMsg = "エラー番号: " & Err.Number & vbCrLf & _ "エラー内容: " & Err.Description MsgBox errMsg, vbCritical, "エラー" ' 必要に応じてログ出力 End Sub
Examples
→ ワークシート操作+集計ロジックのテンプレートを提供/excel-vba 売上データを集計したい
→ FileSystemObjectとワークブック操作のパターンを提供/excel-vba 複数のExcelを統合したい
→ パフォーマンス最適化パターン(ScreenUpdating等)を適用マクロが遅い
→ エラーハンドリングテンプレートを提供エラーでマクロが止まる
Guidelines
- 必ず
を宣言して暗黙の変数宣言を禁止Option Explicit - すべてのプロシージャに
を実装On Error GoTo ErrorHandler - 大量データ処理時は配列に読み込んでからループ処理
- 処理前後で
とScreenUpdating
を制御Calculation - 変数名には型を示す接頭辞を付ける(str, lng, rng, ws等)
- 長いプロシージャは機能ごとに分割して可読性を確保
関連エージェント
: VBA開発専門家@excel-vba-expert