Excel Macro Remover - マクロ除去ツールを公開しました
「このExcelファイル、マクロが入ってるけど開いて大丈夫?」
そんな不安を感じたことはありませんか?
外部から受け取ったExcelファイルにマクロが含まれていると、悪意のあるコードが実行される可能性があります。かといって、マクロを手動で除去するのは手間がかかる。
そこで、ワンクリックでマクロを除去できるツールを作りました。
Excel Macro Removerとは
マクロ付きExcelファイル(.xlsm)をアップロードするだけで、マクロを除去した.xlsxファイルをダウンロードできるツールです。
特徴:
- ドラッグ&ドロップで簡単操作
- 書式・数式・レイアウトは完全保持
- 100MBまでの大容量ファイルに対応
なぜ作ったのか
業務でExcelファイルをやり取りする中で、マクロ付きファイルを受け取ることがあります。
- 「マクロは使わないけど、データは必要」
- 「セキュリティポリシーでマクロを有効にできない」
- 「マクロなしで他の人に共有したい」
こんな場面で、手軽にマクロだけを除去できるツールがあれば便利だと思いました。
技術スタック
今回のツールは以下の技術で作りました:
- Flask - 軽量なPython Webフレームワーク
- openpyxl - ExcelファイルをPythonで操作
- pywebview - デスクトップアプリ化
openpyxlは.xlsmファイルを読み込む際、デフォルトでマクロを読み込みません。そのため、読み込んだワークブックを.xlsxとして保存するだけで、自然にマクロが除去されます。
デスクトップアプリ版も
Webアプリ版に加えて、Windows用のデスクトップアプリ(.exe) も用意しています。
PyInstallerを使って単一の実行ファイルにパッケージ化しているので、Pythonがインストールされていない環境でも使えます。大容量ファイルを処理したい場合や、オフライン環境で使いたい場合におすすめです。
GitHubで公開中
ソースコードはGitHubで公開しています:
daichitsuchiya39-creator/macro-remover-for-excel
Excel Toolsシリーズ
このツールは、Excel作業を効率化する「Excel Tools」シリーズの第2弾です。
- Excel Sheet Pic - シート分割ツール
- Excel Macro Remover - マクロ除去ツール(今回)
今後も、Excelの「ちょっと面倒な作業」を自動化するツールを増やしていく予定です。
まとめ
マクロ付きExcelファイルを安全に扱いたいとき、ぜひ Excel Macro Remover を試してみてください。
「こんな機能がほしい」というリクエストがあれば、お気軽にどうぞ!