パスワード付きZipファイルメールを自動解凍する方法(M365対応)

こんにちは。カナメです。

 

以前の記事で、パスワード付きZipファイルメールを自動解凍するマクロを作成しましたが、

職場でもOffice365への切り替えが進んでいるため、32bitのDLLを使っているこのマクロが使用できなく

なってしまいました。

 

そこで、マクロの一部を改造して、Office365でも使えるようにします。

 

マクロのDeclare構文にPtrSafeを追加

以前作ったマクロのモジュールのDLL.basを開きます。

ここの文を以下のように変更します

・Declareの後に「PtrSafe」を追加する

・hWnd の引数の型 long を「LongPtr」に変更する

以下のブログを参考にさせていただきますと

Office365は64bitなので、32bit用に書かれたコードを64bit対応にするために

必要なのだということはなんとなくわかりました。

DLLを64bit対応のものに変える

今まで使用していた「7-zip32.DLL」はOffice365では使用できなくなってしまったため、

以下のサイトから、64bit対応の7-zipDLLを使わせていただきました。

http://ayakawa.o.oo7.jp/soft/ntutil.html#7z

綾川的趣味之接続集

「7-zip64.dll ver 9.22.00.02 私家版」をダウンロードします

 

DLL.basの、参照するDLLを以下のように修正

 

前回の7-zip32.DLLはCドライブ → Windows →SysWOW64のフォルダに保存しましたが、

今回のDLLはCドライブ → Windows →System32に保存します。

 

マクロを有効にする

Office365に切り替えると、マクロが無効にする設定になっているので、

マクロを有効にします

ファイル→オプション→トラストセンター

トラストセンターの設定

マクロの設定で、「すべてのマクロを有効にする」をクリック

一番下です。

 

あとは前回と同じように、マクロボタンを作成することで、Office365でも使えるようになりました。

 

とりあえず、動いてくれてよかった。まだしばらくは使えそうです。

それではまた。

※修正済みのOffice365対応 パスワード付きZipファイルメール自動解凍マクロは

以下よりダウンロードできます。

Office365対応 64bit パスワード付きZipファイルメール自動解凍VBAのマクロファイルはここからダウンロードできます。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする