Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>xlcraft - VBA for ExcelNew to Visual Studio Code? Get it now.
xlcraft - VBA for Excel

xlcraft - VBA for Excel

AmaneMikoto

|
3 installs
| (0) | Free
VBA development for Excel: syntax, IntelliSense, lint, formatter (Free) + Excel sync and Run Macro (Pro).
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

xlcraft — VBA for Excel

VS Code で Excel VBA を快適に開発するための拡張機能です。シンタックスハイライト・IntelliSense・リント・フォーマッタを 無料 で提供し、Excel との双方向同期と「Run Macro in Excel」を Pro 機能 (買い切り ¥750) として提供します。

Version Installs Rating


Free / Pro

カテゴリ Free Pro (¥750 買い切り)
シンタックスハイライト・スニペット ✅ ✅
補完 / 定義ジャンプ (F12) / ホバー / 参照 (Shift+F12) ✅ ✅
ドキュメントハイライト / リネームシンボル ✅ ✅
アウトライン / ワークスペースシンボル ✅ ✅
型推論ドット補完 (Dim ws As Worksheet → ws.) + With ブロック補完 ✅ ✅
ユーザー定義クラス / .frm コントロールのメンバ補完 ✅ ✅
Set 代入型推論 / コレクションアイテムヒント / シグネチャヘルプ ✅ ✅
Lint 7 ルール + クイックフィックス ✅ ✅
フォーマッタ (継続行・演算子スペーシング・宣言揃え) ✅ ✅
日本語 / 英語 UI (i18n) ✅ ✅
VBA: Run Macro in Excel (引数サポート付き) — ✅
VBA: Sync Current File to Excel — ✅
VBA: Sync ALL Modules to Excel — ✅
VBA: Export Module from Excel — ✅
CodeLens: Sub/Function 上に Run/Sync アクション表示 — ✅
7 日間トライアル ✅ Pro 機能を全開放 —

初回インストール時から 7 日間のトライアル で Pro 機能を試せます。トライアル期間中・終了後ともに、エディタ機能 (Free) は引き続き利用可能です。


Pro の購入とアクティベート

1. 購入

xlcraft Pro チェックアウト で ¥750 を支払うと、メールでライセンスキー (XXXX-XXXX-XXXX-XXXX-XXXX 形式) が届きます。

2. アクティベート

VS Code 内でコマンドパレット (Ctrl/Cmd+Shift+P) を開き:

xlcraft: Activate License

を実行 → ライセンスキーを貼り付け。ステータスバーが xlcraft: Pro に変わります。

3. 機械の移動

1 ライセンスにつき 1 台までです。別の PC で使う場合は、まず元の PC で xlcraft: Deactivate License を実行してから新しい PC でアクティベートしてください。

4. リファンド

Polar のデフォルトに従い 購入から 14 日以内 ならリファンド可能です。


ライセンスコマンド

コマンド 動作
xlcraft: Activate License ライセンスキーを入力して Pro をアクティベート
xlcraft: Deactivate License このマシンの Pro を無効化 (キー自体は再利用可能)
xlcraft: Show License Status 現在のティアと操作メニューを表示
xlcraft: Buy xlcraft Pro チェックアウトページをブラウザで開く
xlcraft: Copy License Diagnostics サポート用の匿名化診断情報をクリップボードにコピー

ステータスバーの xlcraft: … 表示をクリックしても同じ操作メニューが開きます。


スクリーンショット


主な機能 (Free)

言語サポート

  • .bas / .cls / .frm / .vba のシンタックスハイライト
  • ブロック構造に応じた自動インデント・コメント切替・括弧マッチング
  • スニペット (sub, func, for, errhandler, lastrow ほか)

IntelliSense

  • 補完: 同ファイル内の Sub/Function/Property/Dim/Const、ワークスペース内の Public シンボル、Excel 組み込みオブジェクトモデル (20+ 型: Application, Worksheet, Range, ListObject, Font, Dictionary 等) を統合
  • 型推論ドット補完: Dim ws As Worksheet → ws. / With ws ... .Range / Set ws = Worksheets(1) → ws. / Worksheets(1). (コレクションアイテム) / ユーザー定義 .cls クラスメンバ / .frm コントロールメンバ
  • シグネチャヘルプ: MsgBox( で引数情報をポップアップ表示 (20 組み込み関数 + ユーザー定義関数)
  • ホバー: シグネチャ・定数値・Enum メンバ値・パラメータデフォルト値・宣言直前のコメントを表示
  • F12 定義ジャンプ: スコープ優先 (ローカル → モジュール → ワークスペース)、複数候補時はピッカー表示
  • Shift+F12 参照検索 / Ctrl+Shift+O アウトライン / Ctrl+T ワークスペースシンボル
  • ドキュメントハイライト: カーソル下の識別子の全出現箇所をハイライト
  • リネームシンボル (F2): VBA スコープ境界内でのリネーム (予約語チェック付き)

Lint (7 ルール、QuickFix 付き)

ルール 既定の重大度 クイックフィックス
Option Explicit 不在 warning "Add Option Explicit at module top"
未使用ローカル変数 (スコープ対応) warning "Remove unused variable declaration" (同一行の複数宣言にも対応)
暗黙の Variant (As 句なし) information "Add As Variant"
On Error GoTo 以外の GoTo 過剰使用 information —
重複宣言 (同一スコープ内) warning "Remove duplicate declaration"
到達不能コード (Exit Sub/GoTo 後) information —
修飾なし Range/Cells information "Qualify with ActiveSheet."

フォーマッタ (Shift+Alt+F)

  • ブロックインデント正規化 (Sub/If/For/With/Select Case/Type/Enum 等)
  • _ 継続行のインデント (+1 段)
  • 演算子スペーシング (=, +, -, *, /, &, ,, :=, <>, <=, >= — 単項 -/+ は除外)
  • 宣言揃え: 連続 Dim 行の As を縦位置揃え (vbaExcel.format.alignDeclarations)
  • 行末空白除去、文字列・コメント保護、CRLF/LF・末尾改行の保持

主な機能 (Pro)

Excel ⇄ VS Code 双方向同期

コマンド 動作
VBA: Run Macro in Excel 編集中のモジュールを Excel に取り込み、指定したマクロを実行 (引数サポート付き)
VBA: Sync Current File to Excel 編集中の .bas を Excel に反映 (実行はしない、進捗通知付き)
VBA: Sync ALL Modules to Excel フォルダ内の .bas をまとめて Excel に反映
VBA: Export Module from Excel Excel 上のモジュールを QuickPick で選んで .bas 出力 (UTF-8 BOM、上書き確認付き)
  • CodeLens: Sub/Function 宣言の上に「Run Macro」「Sync to Excel」ボタンを表示 (Windows のみ、vbaExcel.codeLens.enabled で切替)
  • ワークブック選択: 開いているワークブックを QuickPick で一覧表示、またはファイルダイアログで選択
  • プリフライトチェック: プラットフォーム・ワークブックパスを事前検証
  • エラー診断: Trust Access 欠落・ビット数不一致・Excel 未検出を自動検出し、解決手順を表示

自動同期は実装していません。VS Code → Excel、Excel → VS Code いずれもユーザー指示でのみ実行されます。


動作要件

  • VS Code 1.85.0 以降
  • Windows + Excel (Pro の Excel 連携コマンドの実行時のみ。Free のエディタ機能は OS 非依存)

Excel 連携の前提条件

  1. VBA プロジェクトへのアクセスを許可: ファイル → オプション → セキュリティセンター → セキュリティセンターの設定 → マクロの設定 → 「VBA プロジェクト オブジェクト モデルへのアクセスを信頼する」にチェック
  2. PowerShell と Excel のビット数を一致 (32/64 bit)
  3. ファイルエンコーディング: 日本語コメントを含む .bas は UTF-8 BOM 付きで保存 (Export コマンドは BOM を強制)

設定項目

キー 既定値 説明
vbaExcel.workbookPath "" 対象ワークブック (.xlsm/.xlsb) のパス。空にすると毎回選択
vbaExcel.keepExcelVisible true マクロ実行中に Excel ウィンドウを表示
vbaExcel.codeLens.enabled true Sub/Function 上の CodeLens アクション表示 (Windows のみ)
vbaExcel.linting.rules.optionExplicit warning error / warning / information / hint / off
vbaExcel.linting.rules.unusedVariable warning 同上
vbaExcel.linting.rules.implicitVariant information 同上
vbaExcel.linting.rules.gotoOveruse information 同上
vbaExcel.linting.rules.duplicateDeclaration warning 同上
vbaExcel.linting.rules.unreachableCode information 同上
vbaExcel.linting.rules.unqualifiedRange information 同上
vbaExcel.format.indentSize 4 インデント幅 (1〜8)
vbaExcel.format.useTabs false インデントにタブを使用
vbaExcel.format.operatorSpacing true 演算子周辺のスペース正規化
vbaExcel.format.alignDeclarations false 連続 Dim 行の As を縦揃え

プライバシー

xlcraft はテレメトリを収集しません。唯一の外部通信は Polar へのライセンス検証 (api.polar.sh) のみです。

送信されるデータ

Pro ライセンスのアクティベート・検証・ディアクティベート時に、api.polar.sh へ HTTPS リクエストを送信します。

フィールド 値
key 入力したライセンスキー
organization_id Polar の組織 ID (拡張機能にハードコード)
label vscode.env.machineId から生成した短い文字列 (例: vscode-abcdef12) — アクティベート時のみ送信
activation_id アクティベート時に Polar が返す UUID (検証・ディアクティベート時に使用)

ソースコード、ファイルパス、ドキュメント内容、その他のワークスペースデータは一切送信されません。

第三者サービス

  • Polar がライセンス発行および決済の事業者です。Polar のプライバシーポリシー: https://polar.sh/legal/privacy
  • それ以外の第三者とデータを共有することはありません

データの削除

  • xlcraft: Deactivate License (コマンドパレット) を実行すると、ローカルのライセンスキー・検証キャッシュを消去し、Polar にアクティベーション解除を通知します

サポート用診断情報

  • xlcraft: Copy License Diagnostics でライセンス状態の匿名化された診断情報をクリップボードにコピーできます。ライセンスキーやマシンIDは含まれません(ティア・理由・VS Codeバージョン・プラットフォーム情報のみ)

トラブルシューティング

Excel 連携

症状 原因と対処
「プログラミングによるアクセスは信頼されていません」 Excel > ファイル > オプション > トラストセンター > マクロの設定 > 「VBA プロジェクト オブジェクト モデルへのアクセスを信頼する」にチェック
New-Object Excel.Application で失敗 / 0x80040154 エラー PowerShell と Excel のビット数 (32/64 bit) を揃える。64bit Excel なら 64bit PowerShell を使用
日本語コメントが文字化け .bas を UTF-8 BOM 付き で保存。VS Code 設定: "files.encoding": "utf8bom"
Excel が見つからない Microsoft Excel がインストールされ、COM オートメーションが利用可能か確認
ワークブックが見つからない vbaExcel.workbookPath 設定のパスを確認。空にしてダイアログから選択も可能
マクロのセキュリティ警告 Excel > ファイル > オプション > トラストセンター > マクロの設定 > 「すべてのマクロを有効にする」
CodeLens が表示されない Windows 以外の OS では非表示。vbaExcel.codeLens.enabled が true か確認

ライセンス

症状 原因と対処
「ライセンスキーが活性化上限に達しています」 元の PC で xlcraft: Deactivate License を実行してから新しい PC でアクティベート
xlcraft: Pro → オフライン後 Free に戻った 7 日のオフライン猶予を超過。再接続後に自動で再検証されます
アクティベーションが失敗する (ネットワークエラー) インターネット接続を確認して「Retry」をクリック
無効なキーと言われる ライセンスキーが正しいか確認 (XXXX-XXXX-XXXX-XXXX-XXXX 形式)
サポートに問い合わせたい xlcraft: Copy License Diagnostics で診断情報をコピーし、Issue に添付

Pro ユーザーガイド

リファンド

Polar のデフォルトに従い 購入から 14 日以内 ならリファンド可能です。Polar のチェックアウトメールに記載のリンクから手続きしてください。リファンド後はライセンスが無効化され、Free ティアに戻ります。

アクティベーションリセット

1 ライセンスにつき 1 台の制限があります。PC を買い替えた・再インストールしたなどで以前のマシンにアクセスできない場合:

  1. 可能であれば、元のマシンで xlcraft: Deactivate License を実行
  2. アクセスできない場合は、GitHub Issues でライセンスキーの下4桁と診断情報 (xlcraft: Copy License Diagnostics) を添えてリセットを依頼してください

オフライン利用

  • Pro ライセンスは 24 時間ごとにオンラインで再検証されます
  • オフラインでも 7 日間 は Pro 機能を利用可能 (オフライン猶予期間)
  • 7 日を超えてオフラインの場合は Free に戻りますが、再接続後に自動復帰します

開発者向け

npm install
npm run compile        # tsc -p ./   → out/extension.js
npm run watch          # tsc -w; F5 デバッグ時は事前に起動を推奨
npm run test:unit      # vscode 非依存のユニットテスト (301 tests)
npm test               # @vscode/test-electron による E2E (3 tests)
  • Mocha は TDD UI (suite() / test()) を使用
  • GitHub Actions CI で Node 18/20 のコンパイル・テスト・VSIX アーティファクトを自動実行
  • 詳細は CONTRIBUTING.md・CLAUDE.md を参照

ライセンス

Commercial License © 2026 Masaya Wada

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft