Looks like Folder.CopyHere would help. However it does not notify the program when the copy has completed.
Dim s As String
s = "C:\FullPathToZipFile"
'create a new zip file
Open s For Binary As #1
Dim zipd
zipd = Array(80, 75, 5, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
Dim zip(21) As Byte
Dim i As Long
For i = 0 To 21
zip(i) = zipd(i)
Next
Put #1, , zip
Close #1
Dim objShell As Object
Set objShell = CreateObject("Shell.Application")
Dim objZip As Object, objFolder As Object
Set objZip = objShell.NameSpace(s)
If Not objZip Is Nothing Then
Set objFolder = objShell.NameSpace("C:\FullPathToYourFiles")
If Not objFolder Is Nothing Then
objZip.CopyHere objFolder.Items
End If
End If
Alternatively (maybe) you can implement Compression API