如何在vba中调用winrar软件对文件进行解压缩?





目前市面上有很多种解压缩软件,winrar是其中一种。

由于winrar支持命令行模式运行解压缩,所以可以通过用vba调用winrar的命令行模式来实现文件的批量解压缩。

winrar命令行语法描述如下:

WinRAR <命令> -<参数1> -<参数N> <压缩文件 > <文件…> <@列表文件…> <解压路径\>

命令 指定 WinRAR 运行的命令的字符组合。点击 这里 查看 WinRAR 的命令列表。
参数 切换操作指定类型,压缩强度,压缩文件类型,等等的定义。点击 这里 查看 WinRAR 的参数列表。
压缩文件 要处理的压缩文件名。
文件 要处理的文件名。
列表文件 列表文件是包含要处理文件名称的纯文本。文件名应该在第一卷启动。可以在列表文件中使用 //字符后添加注释。例如,您可以包含两列字符串创建 backup.lst:c:\work\doc\*.txt //备份文本文档 c:\work\image\*.bmp //备份图片

c:\work\misc

并接着运行:

winrar a backup @backup.lst

您可以在命令行中同时指定普通的文件名和列表文件名。

解压路径 只与命令 ex ,搭配使用。指出解压文件添加的位置。如果文件夹不存在时,会自动创建。

具体的winrar 命令可以查阅网上资料。

以下是用winrar 命令行模式压缩文件的vba代码举例:

当用winrar 命令行模式压缩文件时,如果文件在具体的路径下,默认打开压缩文件时会显示路径,不会直接显示被压缩的文件。如果要打开压缩文件时直接显示被压缩的文件,需要添加参数“-ep”,用以排除路径。如以下代码:

 

 

发表评论