welcome to tetsuyanbo web site!!

tetsuyanbo

VBA

Excel VBAメモ 圧縮ファイルを展開してみる

投稿日:2018/05/31

Excelにもオブジェクトの挿入で圧縮ファイルを保存しとくことができる。
1つのファイルで取り扱うことができて便利だけど、圧縮ファイルを展開するために外部のアプリケーションを使うようにすると不便。
なんとか、VBAだけで圧縮ファイルを展開できんもんかと調べてたら...Windowsのシェルを使う方法でなんとかなるんだね...。

ポイントはこんな感じ。

  • CreateObject()でShell.Applicationオブジェクトを作成する
  • Shell.Application.Namespace().Itemsでzipファイルの中にあるファイル情報を取得する
  • Shell.Application.Namespace().CopyHereで指定した場所にファイルをコピーする
    ※要するにコピペする

んで、コード。

準備した圧縮ファイルはこんな内容。

んで、実行してみるとこんな感じ。
ちゃんと指定したフォルダーに圧縮ファイルの中にあったファイルがコピーされとる。

ちなみに、コードはフォルダーがあるかどうかとか同じファイルがすでにあるとかはチェックしていないので注意。

んまま、明日への自分へのメモってことで。

-VBA
-, , , , , , , , , , , ,

Copyright© tetsuyanbo , 2018 All Rights Reserved Powered by STINGER.