モダンなExcelVBA開発環境の構築
はじめまして。
6月に中途入社しました開発一部の河野です。
突然ですが、みなさんVBAは使っていますか?
ExcelVBAにおいても、手軽に業務を効率化できるので多くの方が使用されているかと思います。
私はプログラミングを好きになるきっかけになったのがこのExcelVBAで、業務でもたくさん活用しています。
弊社の新人研修でもデータベースの基礎学習 フェーズとしてAccessVBAを用いて簡易なシステム開発をしてもらいました。
そんな便利なVBAですが、個人的に少し思うことがあります。
それは、標準で用意されているエディタが少々使いづらいということです。
VBE(Visual Souce Editor)というVBA開発のための簡易的なIDEのようなもので、
入力補完やデバッグ実行といった必要最低限の機能は存在するのですが、
タブ切り替えがなく1ファイルごとしか開くことができなかったり、行数が表示されなかったり、Grep検索がないなど、
そして何より、ソースファイルがExcelファイルの中に埋め込まれているため、
バージョン管理ソフトでの差分管理ができないところが不便だと感じています。
そこで今回は、VSCodeからExcelVBA開発する環境を構築する手順と、
さらにGitと連携してバージョン管理を行う手順をまとめてご紹介したいと思います。
1.VSCode側の設定
まずはExcelファイルをVSCodeで編集・実行できる環境を作っていきます。
1-1.開発用Excelファイルの作成
まず、開発に使用するExcelファイルを用意します。
今回はボタンを配置し、ボタンが押下されたら「こんにちは」と表示 する簡単なプログラムを作成してみました。
今回はCドライブ直下に「Excel XVBA」というフォルダを配置し、Excelファイルを格納しています。
1-2.VSCodeで「XVBA」のExctentionを追加
VSCode上でCtrl + Shift + Xを押すと拡張機能の追加画面が表示されるので、
「XVBA」と検索フォームに入力し
「XVBA - Live Server VBA」というExtentionを追加します。
以下のExctentionも便利なので同時に追加しておきます。
VBA:構文をハイライトしてくれる拡張機能 VSCode VBA Snippets:VBAの入力補完を行う拡張機能
1-3.作業フォルダを追加
エクスプローラー内の「フォルダーを開く」ボタンから、
Excelファイルを格納してある作業フォルダを指定します。
1-4.Bootstrapを設定する
画面左下XVBA - MACRO LISTの横にある「B」のボタンを押し、
画面上部検索窓から「Create Excel VBA Project」を選択すると、プロジェクトに必要なファイルの生成が行われます。
1-5.config.jsonを修正する
生成されたファイルの中からconfig.jsonというファイルを開き、設定してあるpathの修正を行います。
「excel_file」の値が初期では「index.xlsb」になっているので、これを編集したいExcelファイル名へ変更します。
1-6.文字コードをUTF-8⇒Shift-JISに変更
ExcelVBAはShiftJISであることに対してVSCodeの初期設定では文字コードがUTF-8のため
そのままだと文字化けが起こります。
設定(Ctrl + ,)の検索窓に「encoding」と入力し、Encoding欄をShift-JISに設定し、VSCodeを再起動してください。
1-7.モジュールのインポート
画面左下XVBA - MACRO LISTの横にあるアイコン「Import - VBA」をクリックし、
VBAコードを取り込みます。
Finish Inport VBA Filesが表示されるとインポート成功です。