Office中国论坛/Access中国论坛

标题: 【源码示例】批量解压带密码压缩包 [打印本页]

作者: roych    时间: 2015-7-15 16:15
标题: 【源码示例】批量解压带密码压缩包
本帖最后由 roych 于 2015-7-15 16:23 编辑

       工作需要,写了一个批量解压带密码压缩包的文件。当然,前提是你必须安装了Winrar。这里已经封装起来了,只要按固定的格式命名压缩包即可批量解压。       里面还附送其它大家可能用得上的模块:批量连接csv文件/Excel文件,批量删除链接表/文件等,基本是使用了FileDialog或者FileSystemObject来完成工作,代码就不贴了,详细见附件。
  1. Function WinRarX()

  2. Dim fso As New FileSystemObject
  3. Dim fl As File
  4. Dim strStorename As String
  5. Dim strPassword As String
  6. Dim strWinrarpath As String

  7. '定义解压包路径
  8. strWinrarpath = "C:\Program Files\WinRAR\WinRAR.exe"

  9. On Error Resume Next

  10. For Each fl In fso.GetFolder(CurrentProject.path & "").Files
  11.     If fl.Name Like "*.zip" Then
  12. '定义店铺
  13.             strStorename = Mid(fl.path, InStrRev(fl.path, "") + 1, Len(fl.path) - InStrRev(fl.path, "") - 10)
  14. '定义密码。这里假定密码是6位,加上扩展名.zip,一共是10位,因此密码字符串位置是从Len(fl.path) - 9开始
  15. '如果密码长度不一样,请自行修改
  16.             strPassword = Mid(fl.path, Len(fl.path) - 9, 6)
  17. '重命名压缩包内的文件
  18.             Call Shell(strWinrarpath & " rn """ & fl.path & """ *.csv """ & strStorename & ".csv", vbHide)
  19.             
  20.         End If
  21. Next

  22. End Function
复制代码


[attach]56844[/attach]



作者: admin    时间: 2015-7-15 16:17
赞一个。
我是直接用rar.exe 使用它的命令参数来实现
作者: roych    时间: 2015-7-15 16:24
admin 发表于 2015-7-15 16:17
赞一个。
我是直接用rar.exe 使用它的命令参数来实现

是不是贴入代码之后,稍稍修改代码就没办法保存完整了。。。




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3