📊
Excel VBA を Visual Studio Code で書きたいんよね。
お疲れ様です。みはるです。
VBAのエディタが気持ち悪いのでvscodeで書くことにしました。
目次
- 必要なもの
- 開発環境構築
- Excel の設定
- インポート&エクスポート
- vbac.wsf とは
- vscode の拡張機能について
必要なもの
- vscode
お好みで拡張機能をインストール- VSCode VBA - Scott Spence
- vba-snippets - Scott Spence
- vscode-vba-icons - Scott Spence
- powershell
- vbac.wsf
- Excel
開発環境構築
ディレクトリ構成はお好みで。
例)
mkdir ~/work/vba_project/bin
cd ~/work/vba_project
wget -Uri https://raw.githubusercontent.com/vbaidiot/ariawase/master/vbac.wsf -OutFile "vbac.wsf"
#コマンド実行後、bin配下にエクセルファイルを配置する。
#その後、標準モジュールを作成しマクロが有効になっている形式(.xlsm)で保存する。
Excel の設定
Excelのオプション -> トラストセンター -> トラストセンターの設定 ->
マクロの設定 -> VBA プロジェクト オブジェクトモデルへのアクセスを信頼する。
上記にチェックを入れ、OKボタンをクリックして保存する。
インポート&エクスポート
以下のコマンドを実行するとExcelファイルへ、インポート&エクスポートができる。
cscript vbac.wsf decombine -- マクロをエクスポート
cscript vbac.wsf combine -- マクロをインポート
エクスポートすると vbac.wsf と同階層に srcフォルダ が作成され、その中に標準モジュールなどの、ソースファイルが作成される。
インポートする際はsrc フォルダの中にあるソースファイルを読み込ませる。
先にエクスポートして作業用ファイルを生成するのが無難ですね。
以上で環境構築終了です。
vbac.wsf とは
いげ太さん が制作されています Ariawase という VBAライブラリの一部です。
いげ太さん Twitter:https://twitter.com/igeta
Ariawase:https://github.com/vbaidiot/ariawase
※ AriawaseはMITライセンスです。
vscode の拡張機能について
basやclsは自動的に関連付けされますが、dcmはされません。
setting.json に下記を追記します。
"files.associations": {
"*.dcm":"vba",
}
それでは、良きエンジニアライフを!!
Discussion