Agent skill
excel-vba
Excel VBA開発の専門スキル。VBAマクロ作成、Excel操作自動化、ワークブック処理時に使用。
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/excel-vba
SKILL.md
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 売上データを集計したい→ ワークシート操作+集計ロジックのテンプレートを提供/excel-vba 複数のExcelを統合したい→ FileSystemObjectとワークブック操作のパターンを提供マクロが遅い→ パフォーマンス最適化パターン(ScreenUpdating等)を適用エラーでマクロが止まる→ エラーハンドリングテンプレートを提供
Guidelines
- 必ず
Option Explicitを宣言して暗黙の変数宣言を禁止 - すべてのプロシージャに
On Error GoTo ErrorHandlerを実装 - 大量データ処理時は配列に読み込んでからループ処理
- 処理前後で
ScreenUpdatingとCalculationを制御 - 変数名には型を示す接頭辞を付ける(str, lng, rng, ws等)
- 長いプロシージャは機能ごとに分割して可読性を確保
関連エージェント
@excel-vba-expert: VBA開発専門家
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?