第50集 文件压缩与解压
227、 Shell函数
Shell执行一个可执行文件.返回一个 Variant (Double),如果成功的话,代表这个程序的任务 ID,若不成功,则会返回 0。
语法
Shell(“可执行程序的路径 文件名或命令行”,窗口的显示方式)
Sub 用绘图程序打开图片()
Dim mysh
mysh = Shell("mspaint.exe " & ThisWorkbook.Path & “\pic.jpg”, vbMaximizedFocus) '注意空格
End Sub
228、 WinRar命令的命令行表示方法
WinRar程序路径 命令 开关1 开关2 开关3…开关N 压缩包路径 压缩的文件路径
命令是指要进行怎么样的操作,如A是压缩,X是解压缩
开关是具体操作时的细节,如压缩是是否把原文件删除,是否添加密码等
Sub RarFile() '压缩单个文件
Dim Rarexe As String
Dim myRAR As String
Dim Myfile As String
Dim FileString As String
Dim Result As Long
Rarexe = “C:\Program Files\WinRAR\WinRAR.exe” 'rar程序路径
myRAR = ThisWorkbook.Path & “\A.rar” '压缩后的文件名
Myfile = ThisWorkbook.Path & “\A.xls” ’ 指定要压缩的文件
FileString = Rarexe & " A " & myRAR & " " & Myfile 'rar程序的A命令压缩文件的字符串
Result = Shell(FileString, vbHide) '执行压缩
End Sub
如果文件名使用通配符,可以对同类的文件进行和压缩,
如果只有路径没有文件名,则会把这个文件夹进行压缩
Sub RarFile2() '多个文件压在一起
Dim Rarexe As String
Dim myRAR As String
Dim Myfile As String
Dim FileString As String
Dim Result As Long
Rarexe = “C:\program files\winrar\winrar.exe” 'rar程序路径
myRAR = ThisWorkbook.Path & “\B.rar” '压缩后的文件名
’ Myfile = ThisWorkbook.path & “\B*.xls” ’ 指定要压缩的文件类型
Myfile = ThisWorkbook.Path & “\B” ’ 指定要压缩的文件夹路径
FileString =