Ponekad ćete možda htjeti komprimirati sve privitke u e-poruci u zip datoteku izravno u programu Outlook. U ovom slučaju možete upotrijebiti VBA kod predstavljen u ovom članku da biste postigli ovu značajku.
Prema zadanim postavkama, Outlook ima ograničenje veličine privitaka – 20 MB za POP3, IMAP ili druge račune e-pošte temeljene na webu i 10 MB za Exchange račune. Dakle, kada ukupna veličina privitaka premaši ograničenje, dobit ćete povezane pogreške. U ovom slučaju, dobra je opcija komprimirati sve privitke u a zip file.
Međutim, kao što vidite, Outlook ne nudi takvu izravnu značajku. To jest, morate prvo zip te datoteke na tvrdom disku i zatim ponovno priložite novostvorene zip datoteka. U stvarnosti, most korisnici se nadaju da to mogu izravno postići unutar Outlooka. Kao odgovor na ovaj zahtjev, u nastavku ćemo predstaviti kako koristiti VBA za njegovu realizaciju.
Komprimirajte sve privitke u a Zip file
- Prvo pokrenite svoju Outlook aplikaciju.
- Zatim pritisnite tipke "Alt + F11" u glavnom prozoru programa Outlook.
- Zatim u novom prozoru Outlook VBA uređivača otvorite modul.
- Nakon toga kopirajte i zalijepite sljedeće VBA kodove u modul.
Sub ZipAttachments()
Dim objMail As Outlook.MailItem
Dim objAttachments As Outlook.attachments
Dim objAttachment As Outlook.Attachment
Dim objFileSystem As Object
Dim objShell As Object
Dim varTempFolder As Variant
Dim varZipFile As Variant
'Save the attachments to Temporary folder
Set objFileSystem = CreateObject("Scripting.FileSystemObject")
varTempFolder = objFileSystem.GetSpecialFolder(2).Path & "\Temp " & Format(Now, "dd-mm-yyyy- hh-mm-ss-")
MkDir (varTempFolder)
varTempFolder = varTempFolder & "\"
Set objMail = Outlook.Application.ActiveInspector.CurrentItem
Set objAttachments = objMail.attachments
For Each objAttachment In objAttachments
objAttachment.SaveAsFile (varTempFolder & objAttachment.FileName)
Next
'Create a new zip file
varZipFile = InputBox("Specify a name for the new zip file", "Name Zip File", objMail.Subject)
varZipFile = objFileSystem.GetSpecialFolder(2).Path & "\" & varZipFile & ".zip"
Open varZipFile For Output As #1
Print #1, Chr$(80) & Chr$(75) & Chr$(5) & Chr$(6) & String(18, 0)
Close #1
'Copy all the saved attachments to the new zip file
Set objShell = CreateObject("Shell.Application")
objShell.NameSpace(varZipFile).CopyHere objShell.NameSpace(varTempFolder).Items
'Keep macro running until Compressing is done
On Error Resume Next
Do Until objShell.NameSpace(varZipFile).Items.Count = objShell.NameSpace(varTempFolder).Items.Count
Application.Wait (Now + TimeValue("0:00:01"))
Loop
On Error GoTo 0
'Delete all the attachments
Set objAttachments = objMail.attachments
While objAttachments.Count > 0
objAttachments.Item(1).Delete
Wend
'Add the new zip file to the current email
objMail.attachments.Add varZipFile
'Prompt
MsgBox ("Complete!")
End Sub
- Nakon toga trebate provjeriti postavke Outlook makronaredbe kako biste bili sigurni da je makronaredba dopuštena.
- Kasnije možete dodati novi VBA projekt na alatnu traku za brzi pristup prozora s porukama kao i obično.
- Na kraju možete pokušati.
- Najprije izradite novu e-poštu i priložite nekoliko datoteka. Ili jednostavno otvorite e-poštu s mnogo privitaka.
- Zatim kliknite gumb makronaredbe na alatnoj traci za brzi pristup.
- Kasnije trebate navesti naziv za zip datoteku i pritisnite "OK". Prema zadanim postavkama bit će postavljen isto kao predmet e-pošte.
- Odjednom će svi prilozi biti komprimirani u a zip datoteku, poput sljedeće snimke zaslona:
Unzip .Zip Privici izravno u programu Outlook
Neizbježno je da ćete primiti sve privitke s “.zip” proširenje datoteke tu i tamo. U ovom scenariju, možda ćete htjeti izravno unzip takve datoteke iz vašeg Outlooka umjesto da ih spremate i dekomprimirate na lokalnom disku. Iako Outlook nema takvu izvornu značajku, još uvijek možete koristiti VBA da biste je dobili. Za više detalja, možete pogledati drugi članak – “Kako Unzip .Zip Privici izravno u Outlooku putem VBA".
Uvod za autora:
Shirley Zhang stručnjakinja je za oporavak podataka u DataNumen, Inc., koji je svjetski lider u tehnologijama za oporavak podataka, uključujući sql popravak i softverske proizvode za popravak Outlooka. Za više informacija posjetite www.datanumen.com



