Nors „Outlook“ neleidžia tiesiogiai suspausti priedų į a RAR failą, vis tiek galite naudoti šiame straipsnyje pristatytą VBA kodą, kad jį suprastumėte kaip vėją.
Kaip visi žinome, kai prie vieno el. laiško pridedate daug didelių failų, greičiausiai gausite įspėjimą apie priedo dydžio apribojimą programoje „Outlook“. Be to, jei el. laiškas turi per didelius priedus, bus sunkiau jį sėkmingai išsiųsti. Taigi, susidūrę su tokiais priedais, galite pasirinkti juos suspausti į a RAR failą, kuris gali tam tikru mastu sumažinti pridėtų failų dydį.

Apskritai, norint suspausti failus į a RAR failą, jį galite pasiekti tik vietiniame diske, nes „Outlook“ nepateikia tokios savosios glaudinimo funkcijos. Tačiau daugelis tikisi tai padaryti tiesiogiai naudodami „Outlook“. Todėl čia mes išmokysime, kaip tai gauti naudojant „Outlook VBA“.
Greitai suspauskite visus priedus į a RAR Failas jūsų „Outlook“ el
- Pačioje pradžioje paleiskite „Outlook“ programą.
- Tada pagrindiniame „Outlook“ lange paspauskite klavišus „Alt + F11“.
- Tada pateksite į langą „Microsoft Visual Basic for Applications“. Turite atidaryti tuščią modulį.
- Tada nukopijuokite ir įklijuokite šį VBA kodą į šį modulį.
Sub RarAttachments()
Dim objMail As Outlook.MailItem
Dim objAttachments As Outlook.attachments
Dim objAttachment As Outlook.Attachment
Dim objFileSystem As Object
Dim objShell As Object
Dim strTempFolder As Variant
Dim strRARFile As Variant
Dim strSourceFile As String
'Save the attachments to Temporary folder
Set objFileSystem = CreateObject("Scripting.FileSystemObject")
strTempFolder = objFileSystem.GetSpecialFolder(2).Path & "\Temp " & Format(Now, "YYYY-MM-DD hh-mm-ss")
MkDir (strTempFolder)
Set objMail = Outlook.Application.ActiveInspector.CurrentItem
Set objAttachments = objMail.attachments
For Each objAttachment In objAttachments
objAttachment.SaveAsFile (strTempFolder & "\" & objAttachment.FileName)
Next
'Create a new RAR file
strRARFile = InputBox("Specify a name for the new zip file", "Name Zip File", objMail.Subject)
strRARFile = objFileSystem.GetSpecialFolder(2).Path & "\" & strRARFile & ".rar"
Open strRARFile For Output As #1
Print #1, Chr$(80) & Chr$(75) & Chr$(5) & Chr$(6) & String(18, 0)
Close #1
Set objShell = CreateObject("Shell.Application")
'Add the files to the New RAR file
strSourceFile = Dir(strTempFolder)
While strSourceFile <> ""
'Change "C:\Program Files (x86)\WinRAR\WinRAR.exe" to the location where your WinRAR is installed
objShell.Run Chr(34) & "C:\Program Files (x86)\WinRAR\WinRAR.exe" & Chr(34) & " a -r" & Chr(34) & strRARFile & Chr(34) & " " & Chr(34) & strSourceFile & Chr(34)
strSourceFile = Dir
Wend
'Delete all the attachments
Set objAttachments = objMail.attachments
While objAttachments.Count > 0
objAttachments.Item(1).Delete
Wend
'Add the new RAR file to the current email
objMail.attachments.Add strRARFile
'Prompt you
MsgBox "Complete!", vbExclamation
End Sub
- Po to pakeiskite „Outlook“ makrokomandos saugos lygį į žemą.
- Vėliau, norėdami patogiai pasiekti, makrokomandą galėsite įtraukti į greitosios prieigos įrankių juostą.
- Galų gale galite pabandyti.
- Pirmiausia atidarykite el. laišką su daugybe priedų.
- Tada greitosios prieigos įrankių juostoje paspauskite makrokomandos mygtuką.
- Tada turėsite įvesti naujojo pavadinimą RAR failą ir paspauskite „Gerai“.
- Po to visi originalūs priedai bus pakeisti naujais RAR failą kaip ekrano kopiją:
unrar .RAR Priedai programoje „Outlook“.
Panašiai ir „Outlook“ neleidžia vartotojams tiesiogiai išskleisti .RAR jame esantį failą. Todėl, jei norite peržiūrėti vidinius failus .RAR priedą, turite jį išsaugoti ir išskleisti vietiniame diske. Tačiau tai neabejotinai nuobodu. Laimei, vis tiek galite naudoti VBA, kad pasiektumėte šią „Outlook“ funkciją, kuri buvo pristatyta mano ankstesniame straipsnyje „Kaip išskleisti failą .RAR Priedai tiesiogiai „Outlook“ per VBA".
Autoriaus įvadas:
Shirley Zhang yra duomenų atkūrimo ekspertė DataNumen, Inc., kuri yra pasaulyje duomenų atkūrimo technologijų lyderė, įskaitant SQL Server korupcija ir „Outlook“ taisymo programinės įrangos produktai. Norėdami gauti daugiau informacijos, apsilankykite WWW.datanumen.com

