【結論】Excel VBAとPythonを使い分ける
Claude CodeはVBAモジュールやPythonによるExcel処理を作成できますが、VBAとopenpyxlでは扱える機能が異なります。
マクロ、ピボット、外部接続、署名を維持する場合はVBAまたはExcel自動化を選び、単純な表処理はPythonを検討します。
元ファイルを上書きせず、コピーで検証します。
# ターミナルで実行:入力ファイルをバックアップ
cp sales_data.xlsx sales_data.backup.xlsx
# ターミナルで実行:Python仮想環境を作成
python3 -m venv .venv && source .venv/bin/activate
# ターミナルで実行:Excel処理ライブラリを導入
pip install openpyxl pandas
# ターミナルで実行:処理スクリプトを実行
python build_report.py具体的な手順・設定方法
Excel版、OS、入力シート、列、数式、マクロ、外部接続を確認します。
出力ファイル名、日付形式、重複処理、空白、エラー時の停止条件を定義します。
コピーへ処理し、件数、合計、数式、書式、マクロ保持を比較します。
実践プロンプト / 活用テクニック
# 起動後のセッション内で入力
sales_data.xlsxを読み取り専用で調査する計画を作成してください。
列名、シート名、数式、マクロ有無を確認し、月別集計をreport.xlsxへ別名保存してください。
承認までパッケージ導入、実行、元ファイル変更は行わないでください。注意点・よくあるエラーと対処法
openpyxlはVBAコードを実行せず、すべてのExcel機能を完全保持できるわけではありません。
VBAのOn Error Resume Nextを広範囲に使うと障害を隠します。
個人情報や財務データを外部MCPや未承認サービスへ送信しないでください。