VBA壓縮與解壓縮幾種方法的縮閤對比

2017-09-09 17:24:00
zstmtony
原創
986

Vb,Access VBA ,Excel VBA實現壓縮與解壓縮總結齣來有以下幾種方法


作者:tmtony

來源:Access交流網


1.通過Shell調用Winrar.exe 進行壓縮和解壓縮

2.通過VBA代碼調用zip32.dll 及 unzip32.dll

3.VBA 代碼調用pkzip.exe 及 pkunzip.exe

4.VBA 調用 info-zip免費控件

5.VBA 純代碼 使用 clsZip類模塊來實現壓縮與解壓縮

6.VBA 調用shell.application fso來實現


通過幾種方法對比

1.調用第三方exe組件的支持32位與64位,壓縮與解壓縮速度較快,兼容性較好,因爲是通過Shell ,所以不區分32位與64位

2.調用zip 的dll 組件 保能在32位運行,因爲這些Dll都是隻支持32位Access數據庫 (裡麵用到AddressOf DLLPrnt 不好修改,且zip32.dll本身就是32位 不好靜態dll 也可能有其牠可能,有時間再繼續嚐試)

3.clsZip類模塊的方式應該可能衕時支持32位與64位(需要修改所有declare 加上 ptrsafe關鍵字),但解壓縮速度相對較慢,另需要文件未找到: msvbvm60.dll ,有些Windows 64位沒有內置,需要添加這箇

4.shell.application方式也支持32位與64位,解壓速度也比較快,但有些精簡版的XP繫統由於刪除瞭內置的zip功能而導緻不成功

下圖顯示支持access 2010 64位

    分享