Daudzi lietotāji ilgojas pēc metodes, kā ātri iegūt visas e-pasta adreses no Outlook e-pasta ziņojuma pamatteksta vai pat vairākus e-pasta ziņojumus. Tāpēc šajā rakstā tiks aplūkots šis jautājums un sniegta jums ātra metode, kurā tiek izmantota VBA.
Kad kāds jums nosūta e-pastu, kura pamattekstā ir e-pasta adrešu saraksts, ja vēlaties kādu no šiem iemesliem, piemēram, pievienot mapei Kontaktpersonas vai citiem, šīs e-pasta adreses izmantot, vispirms ir jāizņem visas e-pasta adreses pamattekstā. . Tāpēc turpmāk mēs parādīsim, kā to sasniegt ar VBA.
Izvilkt visas e-pasta adreses no vairāku Outlook e-pasta ziņojumu teksta
- Pašā sākumā palaidiet programmu Outlook.
- Pēc tam, nokļūstot galvenajā Outlook logā, varat nospiest taustiņus “Alt + F11”.
- Pēc tam jaunajā logā “Microsoft Visual Basic for Applications” ir jāatver neizmantots modulis vai vienkārši jāievieto jauns.
- Vēlāk jums ir jākopē un jāielīmē šis VBA kods šajā modulī.
Sub ExtractEmailAddresses_BodyofMultipleEmails()
Dim objSelection As Outlook.Selection
Dim objMail As Outlook.MailItem
Dim i, n As Long
Dim objWordApp As Word.Application
Dim objWordDocument As Word.Document
Dim strEmailAddresses As String
Dim objFileSystem As Object
Dim strTextFile As String
Dim objTextFile As Object
Set objSelection = Outlook.Application.ActiveExplorer.Selection
If Not (objSelection Is Nothing) Then
i = 0
n = 1
On Error Resume Next
For i = objSelection.count To 1 Step -1
Set objMail = objSelection.Item(i)
objMail.Display
Set objWordDocument = objMail.GetInspector.WordEditor
Set objWordApp = objWordDocument.Application
Set objSearchRange = objWordDocument.Range
'Find the email addresses via wildcards
With objWordApp.Selection.Find
.Text = "[A-z,0-9]{1,}\@[A-z,0-9,.]{1,}"
.MatchWildcards = True
.Execute
End With
While objWordApp.Selection.Find.Found
'Get a list of email addresses in the body
strEmailAddresses = strEmailAddresses & n & ": " & objWordApp.Selection.Text & vbCrLf
objWordApp.Selection.Find.Execute
n = n + 1
Wend
objMail.Close olDiscard
Next
End If
'Create a new Text file
Set objFileSystem = CreateObject("Scripting.FileSystemObject")
strTextFile = "E:\Extracted Email Addresses-" & Format(Date, "YYYYMMDD") & ".txt"
Set objTextFile = objFileSystem.CreateTextFile(strTextFile, True)
'Input the list of extracted email addresses into this Text file
objTextFile.WriteLine (strEmailAddresses)
objTextFile.Close
MsgBox "Completed!", vbInformation, "Extract Email Addresses"
End Sub
- Vēlāk jūs varat iziet no pašreizējā VBA redaktora loga un turpināt pievienot jaunu makro ātrās piekļuves rīkjoslai.
- Pēc tam jums jāmaina Outlook makro drošības līmenis uz zemu.
- Visbeidzot, jūs varat izmēģināt.
- Pirmkārt, e-pasta sarakstā atlasiet vairākus Outlook e-pasta ziņojumus, no kuru ķermeņa jums jāizņem e-pasta adreses.
- Pēc tam ātrās piekļuves rīkjoslā noklikšķiniet uz jaunās pogas.
- Kad saņemat ziņojumu ar aicinājumu “Pabeigts”, varat doties uz iepriekš definēto mapi VBA kodā, lai atrastu jaunu .TXT failu.
- Atveriet šo failu un redzēsiet, ka visas iegūtās e-pasta adreses tiek parādītas kā šāds ekrānuzņēmums:
Aizsargājiet Outlook pret ļaunprātīgiem makro
Ja esat iestatījis Outlook, lai atļautu visus makro, jums jāuzmanās no visiem makro, kas slēpti nezināmos e-pastos. Tas ir tāpēc, ka tajos var būt daudz slēptu vīrusu, kas tieši var izraisīt Outlook korupciju. Ar vīrusiem inficētu PST failu ir diezgan grūti atgūt. Tajā laikā, iespējams, jūsu pēdējā iespēja ir spēcīga un uzticama Outlook labojums lietderība, piemēram, DataNumen Outlook Repair. Tas var labot Outlook failu neatkarīgi no tā, cik liels ir kaitējums.
Autora ievads:
Šērlija Džana ir datu atkopšanas eksperte DataNumen, Inc., kas ir pasaules līderis datu atkopšanas tehnoloģiju, tostarp korumpēts sql un perspektīvas remonta programmatūras produktus. Lai iegūtu vairāk informācijas, apmeklējiet vietni www.datanumen. Ar



