Om du upptäcker att vissa kontakter saknar e-postadress i din Outlook-fil kan du bearbeta varje kontaktmapp för att ta bort alla sådana kontakter. Det här inlägget kommer att dela två sätt med dig.
Kanske har du många kontakter i din Outlook och några av dem har ingen e-postadress. Om du tror att de inte längre är användbara måste du hoppas ta bort alla kontakter utan e-postadress. På standard sätt kan du använda "Direkt sökning" för att hitta dem och sedan radera dem manuellt, som följande metod 1. Ändå är det lite tråkigt. Därför kommer vi i metod 2 att lära dig ett annat mer effektivt sätt.
Metod 1: Ta bort manuellt efter att du har hittat kontakter utan e-postadress
- Till att börja med, tryck på "Ctrl + 3"-tangenterna för att komma åt "Kontakter"-fönstret.
- Klicka sedan i sökrutan.
- Klicka sedan på "Alla kontaktobjekt" i det nya bandet "Sök".
- Klicka sedan på "Har adress"> "Har e-postadress".
- Därefter läggs kriteriet ”E-postadresser: = []” till i sökrutan. Du måste ta bort "NOT".
- Därefter kommer alla kontakter utan e-postadress att listas.
- Nu bör du välja kontakter i sökresultaten manuellt genom att dina kontaktgrupper också måste finnas i listan.
- Slutligen trycker du på “Del” -knappen för att radera alla valda kontakter.
Metod 2: Batch Radera alla kontakter utan e-postadress med VBA
- Först trycker du på “Alt + F11” för att starta VBA-redigeraren i Outlook.
- På den nya skärmen kopierar du följande VBA-kod till en modul.
Sub BatchDeleteAllContactsWithoutEmailAddress()
Dim objStore As Outlook.Store
Dim lTotalCount As Long
lTotalCount = 0
'Process all stores in your Outlook
For Each objStore In Application.Session.Stores
Call ProcessContactFolders(objStore.GetRootFolder.Folders, lTotalCount)
Next
MsgBox lTotalCount & " contacts are deleted!", vbInformation + vbOKOnly, "Delete Contacts"
End Sub
Sub ProcessContactFolders(ByVal objFolders As Outlook.Folders, lCount As Long)
Dim objFolder As Outlook.Folder
Dim i As Long
Dim objContact As Outlook.ContactItem
Dim objSubfolder As Outlook.Folder
For Each objFolder In objFolders
If (objFolder.DefaultItemType = olContactItem) And (objFolder.Name <> "Skype Contacts") Then
For i = objFolder.Items.Count To 1 Step -1
If objFolder.Items(i).Class = olContact Then
Set objContact = objFolder.Items(i)
'Delete the contact w/o email address
If (objContact.Email1Address = "") And (objContact.Email2Address = "") And (objContact.Email3Address = "") Then
objContact.Delete
lCount = lCount + 1
End If
End If
Next
'Process subfolders recursively
If objFolder.Folders.Count > 0 Then
Call ProcessContactFolders(objFolder.Folders, lCount)
End If
End If
Next
End Sub
- Senare klickar du på underrutinen “BatchDeleteAllContactsWithoutEmailAddress”.
- Så småningom trycker du på “F5” för att utlösa detta makro.
- När det är klart får du ett meddelande om resultaten, som bilden nedan.
- Alla kontakter utan e-postadress har flyttats till mappen "Borttagna objekt".
Håll dig långt borta från alla potentiella risker
Outlook kan skadas på grund av en rad olika faktorer, såsom virus, användarfel, programvarufel och maskinvarufel. Du måste vara ovillig att uppleva Outlook-skador, så du måste hålla alla dessa potentiella risker borta. Till exempel måste du montera potent antivirusprogramvara på din dator. Dessutom måste du säkerhetskopiera dina Outlook-data regelbundet. Sist men inte minst, skulle du bättre förbereda ett robust och pålitligt reparationsverktyg, t.ex. DataNumen Outlook Repair. Det kan fixa din korrupt PST fil med lätthet.
Författarintroduktion:
Shirley Zhang är expert på dataåterställning DataNumen, Inc., som är världsledande inom teknik för återställning av data, inklusive SQL Server korruption och Outlook-programvara för reparationsprogramvara. För mer information besök www.datanumen.com





