Morda ste v mapi Windows shranili več Outlookovih e-poštnih sporočil v obliki zapisa .msg. In pozneje, če želite izvleči priloge iz teh datotek, lahko uporabite način, ki je v skupni rabi v tem članku.
Priponke iz e-poštnih sporočil v vašem Outlooku je precej preprosto. Kaj pa e-poštna sporočila, ki so bila izvožena kot datoteke .msg v mapi Windows? Na splošno morate te datoteke .msg najprej odpreti v Outlooku in nato eno za drugo shraniti njihove priloge. Morda se vam bo zdelo preveč okorno. Tako vas bomo v nadaljevanju naučili druge veliko hitrejše rešitve.
Ekstrahirajte priloge iz vseh Outlookovih sporočilnih datotek v mapi Windows
- Za začetek zaženite aplikacijo Outlook in zaženite urejevalnik VBA.
- Nato v oknu »Microsoft Visual Basic for Applications« kopirajte spodnjo kodo VBA v neuporabljen modul.
Dim strAttachmentFolder As String
Sub ExtractAttachmentsFromEmailsStoredinWindowsFolder()
Dim objShell, objWindowsFolder As Object
'Select a Windows folder
Set objShell = CreateObject("Shell.Application")
Set objWindowsFolder = objShell.BrowseForFolder(0, "Select a Windows Folder:", 0, "")
If Not objWindowsFolder Is Nothing Then
'Create a new folder for saving extracted attachments
strAttachmentFolder = "E:\Attachments-" & Format(Now, "MMDDHHMMSS") & "\"
MkDir (strAttachmentFolder)
Call ProcessFolders(objWindowsFolder.self.Path & "\")
MsgBox "Completed!", vbInformation + vbOKOnly
End If
End Sub
Sub ProcessFolders(strFolderPath As String)
Dim objFileSystem As Object
Dim objFolder As Object
Dim objFiles As Object
Dim objFile As Object
Dim objItem As Object
Dim i As Long
Dim objSubFolder As Object
Set objFileSystem = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFileSystem.GetFolder(strFolderPath)
Set objFiles = objFolder.Files
For Each objFile In objFiles
If objFileSystem.GetExtensionName(objFile) = "msg" Then
'Open the Outlook emails stored in Windows folder
Set objItem = Session.OpenSharedItem(objFile.Path)
If TypeName(objItem) = "MailItem" Then
If objItem.Attachments.Count > 0 Then
'Extract attachments
For i = objItem.Attachments.Count To 1 Step -1
objItem.Attachments(i).SaveAsFile strAttachmentFolder & objItem.Attachments(i).FileName
Next
End If
End If
End If
Next
'Process all subfolders recursively
If objFolder.SubFolders.Count > 0 Then
For Each objSubFolder In objFolder.SubFolders
If ((objSubFolder.Attributes And 2) = 0) And ((objSubFolder.Attributes And 4) = 0) Then
Call ProcessFolders(objSubFolder.Path)
End If
Next
End If
End Sub
- Nato premaknite kazalec v prvi podprogram in pritisnite tipko "F5".
- Nato boste morali v pojavnem pogovornem oknu izbrati izvorno mapo Windows.
- Ko kliknete »V redu«, bo makro nadaljeval z delom.
- Ko se konča, boste prejeli sporočilo »Dokončano«.
- Zdaj lahko dobite dostop do vnaprej določene lokalne mape za shranjevanje ekstrahiranih prilog.
Učinkovito rešite težave z Outlookom
Ker je Outlook nedvomno nagnjen k napakam, morate biti previdni pri delu z Outlookovimi predmeti, na primer nikoli ne zaupati datotekam ali povezavam, vdelanim v neznana e-poštna sporočila, in tako naprej. V nasprotnem primeru se lahko vaša Outlookova datoteka takoj poškoduje. V teh okoliščinah tudi orodje za notranje popravke ne bo v veliko pomoč. Česar se lahko zatečete, je samo izkušen zunanji pripomoček, kot je DataNumen Outlook Repair. Lahko popraviti PST datoteko z lahkoto.
Uvod avtorja:
Shirley Zhang je strokovnjakinja za obnovitev podatkov v DataNumen, Inc., ki je vodilna na svetu na področju tehnologij za obnovitev podatkov, vključno z poškodovan sql in obeti za popravilo programskih izdelkov. Za več informacij obiščite www.datanumen.com


