他の人が作ったVBAを開こうとした際、VBAにパスワードが掛けられて見れないようになっている事があると思います。
もしくは自分で組んだVBAだったとしてもパスワードを忘れてしまって開くことが出来なくなってしまうケースもあるでしょう。

そんな時にはこの方法を使えばパスワードロックが掛けられてない状態にすることが出来ます。
その他のパスワード解除方法についてはこちらも参照してみてください。


バイナリエディタを用意する
この操作をするためにはバイナリエディタを使った「.bin」ファイルを開く必要があります。多くの場合このソフトは入っていないと思いますので、先にダウンロードしておきましょう。
「バイナリエディタ」などで検索すると出てきます。

拡張子を「.zip」に変更する
まずは該当のエクセルファイルをコピーしてバックアップを取っておいてください。この後の操作で失敗すると開くことが出来なくなってしまう可能性があります。
1.下図のようにエクセルファイルの拡張子を「.xlsm」から「.zip」に変更する

2.下図のような警告画面が出ますので「はい」をクリックします。

3.するとエクセルファイルが「.zip」ファイルに変わります。

zipファイルから「vbaProject.bin」ファイルを取り出す
1.上で作成した「.zip」ファイルをダブルクリックして開き、「xl」というフォルダを開きます。

2.「vbaProject.bin」ファイルを別の場所にコピーする

「vbaProject.bin」ファイルを加工する
ダウンロードしておいたバイナリエディタで「vbaProject.bin」を開く

ReadOnlyにチェックが入っている場合はクリックしてチェックを外しておく

「DPB」で検索をする

「DPB」の中の文字を何か一つ別の文字に置き換える、洗濯した状態で文字のキーを押せばOKです。

「vbaProject.bin」を上書き保存して閉じます。

「vbaProject.bin」ファイルを元の「.zip」ファイルフォルダに戻す

「コピーして置き換える」をクリックする

エクセルを開く
加工していた「.zip」ファイルの拡張子を「.xlsm」に戻す

加工していたエクセルファイルを開く

エクセルを開くと以下の様なエラーメッセージが表示されます。先ほど文字を変えた名前が「不正なキー」として表示されていればOKです。

ここで違う文字列のエラーが表示されたらどこかで間違えている可能性が高いので、初めからやり直してください。
開いたらすぐに「上書き保存」してエクセルを閉じます。

もう一度エクセルを開くとVBAパスワードが解除された状態になっています。



コメント