我用EXCEL生成很多文件,又要将这些文件用邮件发给很多人,并且文件需要压缩。请问能不能在XECEL模块中用VBA代码将文件压缩再发送。多谢!

解决方案 »

  1.   

    '用winrar压缩文件
    Option Explicit
    Dim mystr As String
    Dim Source As String     ' 源文件
    Dim Target As String     ' 目标文件
    Dim retval
    Private Sub Command1_Click()
        mystr = "C:\Program Files\WinRAR\winrar.exe"      'winrar.exe文件路径
        Source = App.Path & "\111.jpg"
        Target = App.Path & "\111.rar"                  '可以是war也可以是cab....
        mystr = mystr & "  a " & Target & " " & Source    '命令字符串
        retval = Shell(mystr, vbHide)
    End Sub
    Private Sub Command2_Click()
        mystr = "C:\Program Files\WinRAR\winrar.exe"
        Source = App.Path & "\111.rar"
        Target = App.Path & "\new"                    '存放压缩文件的位置
        mystr = mystr & "X" & Source & " " & Target
        Text1.Text = mystr
        retval = Shell(mystr, vbHide)
    End Sub
    Private Sub Command3_Click()
       End
    End Sub
      

  2.   

    用shell调用外部的程序,比如winzip,winrar之类的,他们都提供命令行的压缩方式
      

  3.   

    winzip,winrar之类的,他们都提供命令行的压缩方式