Excel VBAのソースコードをバージョン管理しやすくする
概要
Excel VBAのソースコードを、gitやSVNで管理したいです。
そのために、ソースコードをエクスポート/インポートするアドインを作りました。
同じような目的でvbacというものがありますが、こっちはコマンドラインを使わずに操作できます。
以下で公開しています。
https://github.com/minoru-nagasawa/VbaImportExportAddIn
使い方
エクスポート
- Excel VBAが書かれているExcelブックを開きます。
- "Export"をクリックします。
- すると、Excelブックと同じ場所にフォルダが作成され、その下にVBAのソースコードがエクスポートされます。
下記の例は、Book1.xlsmに対してエクスポートした例です。
Book1.xlsm.srcというフォルダが作成され、その下にソースコードがエクスポートされています。
./
├─ Book1.xlsm
│
└─ Book1.xlsm.src
├─ Classes
│ Class1.cls
│
├─ ExcelObjects
│ Sheet1
│ ThisWorkbook
│
├─ Forms
│ UserForm1.frm
│ UserForm1.frx
│
└─ Modules
Module1.bas
インポート
- ExcelブックとExcel VBAのソースコードを、エクスポートと同じ構成で置きます。
./
├─ Book1.xlsm
│
└─ Book1.xlsm.src
├─ Classes
│ Class1.cls
│
├─ ExcelObjects
│ Sheet1
│ ThisWorkbook
│
├─ Forms
│ UserForm1.frm
│ UserForm1.frx
│
└─ Modules
Module1.bas
下記の例は、Book1.xlsmに対してエクスポートした例です。
Book1.xlsm.srcというフォルダが作成され、その下にソースコードがエクスポートされています。
./
├─ Book1.xlsm
│
└─ Book1.xlsm.src
├─ Classes
│ Class1.cls
│
├─ ExcelObjects
│ Sheet1
│ ThisWorkbook
│
├─ Forms
│ UserForm1.frm
│ UserForm1.frx
│
└─ Modules
Module1.bas
./
├─ Book1.xlsm
│
└─ Book1.xlsm.src
├─ Classes
│ Class1.cls
│
├─ ExcelObjects
│ Sheet1
│ ThisWorkbook
│
├─ Forms
│ UserForm1.frm
│ UserForm1.frx
│
└─ Modules
Module1.bas
2 . Excelブックを開きます。
3. "Import"をクリックします。
インストール方法
- 起動しているExcelを、全て終了してください。
- VbaImportExportAddIn.xlamをダウンロードしてください。
https://github.com/minoru-nagasawa/VbaImportExportAddIn
- ダウンロードしたファイルを"C:\Users[Username]\AppData\Roaming\Microsoft\AddIns"にコピーしてください。
- コピーしたファイルのプロパティを開いて、「許可する」にチェックして、[OK]してください。
- Excelを起動してください。
- アドインダイアログを開いてください。 ([Alt] -> [t] -> [i] で開きます)
- "VbaImportExportAddIn"にチェックを入れて[OK]してください。
- [ファイル]-[オプション]→[セキュリティセンター]-[セキュリティセンターの設定]→[マクロの設定]-[VBAプロジェクト・・]にチェックを入れて[OK]してください。
注意点
https://github.com/minoru-nagasawa/VbaImportExportAddIn
エクスポートは、出力フォルダの"マクロ名.src"フォルダを空にしてからエクスポートします。
また、インポートは、ExcelブックのVBAを全削除してからインポートします。
つまり、ExcelブックのVBAと、フォルダ下のソースコードの片方にだけ残すことはできないので注意してください。
Author And Source
この問題について(Excel VBAのソースコードをバージョン管理しやすくする), 我々は、より多くの情報をここで見つけました https://qiita.com/minoru-nagasawa/items/e28e3a48d367774e217c著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .