|
Artykuł dotyczy: Microsoft Outlook 2000/2002/2003
Jeśli posiadasz kilka list dystrybucyjnych w Outlook'u, które zawierają dużo kontaktów, to zarządzanie nimi może stać się trudne - zwłaszcza, gdy często zmienia się ich zawartość. Zazwyczaj dosyć dużym problemem jest to, że gdy usuwasz kontakt w Outlook'u, to nie jest on automatycznie usuwany z list dystrybucyjnych. Poniższe makro wyszukuje we wszystkich listach dystrybucyjnych z bieżącego foldera podany adres e-mail. Po zakończeniu wyszukiwania wyświetla nazwy list, w których został on znaleziony. Dzięki temu możesz szybko sprawdzić wszystkie listy, na jakich znajduje się dany kontakt.
Sub SearchInDistLists()
On Error Resume Next
Dim oFolder As MAPIFolder
Set oFolder = Application.ActiveExplorer.CurrentFolder
' Zapytaj o adres SMTP do wyszukania
Dim strSearchAddress As String
strSearchAddress = InputBox("Podaj adres SMTP do wyszukania w listach dystrybucyjnych w tym folderze.")
If InStr(strSearchAddress, "@") < 1 Then
MsgBox "Błędny adres SMTP"
Exit Sub
End If
Dim strDistListNames As String
' Dla każdego elementu w folderze
For Each item In oFolder.Items
Dim oDistList As DistListItem
Set oDistList = item
If Not oDistList Is Nothing Then
For nIndex = 1 To oDistList.MemberCount
If UCase(oDistList.GetMember(nIndex).Address) = UCase(strSearchAddress) Then
strDistListNames = strDistListNames & oDistList.DLName & vbCrLf
Exit For ' adres znaleziony
End If
Next
End If
Next
' Wyświetl wyniki
If strDistListNames <> "" Then
MsgBox "Adres '" & strSearchAddress & "' znaleziono w następujących listach dystrybucyjnych:" & _
vbCrLf & vbCrLf & strDistListNames, vbInformation
Else
MsgBox "Adresu '" & strSearchAddress & "' nie znaleziono na żadnej liście dystrybucyjnej w tym folderze.", vbInformation
End If
End Sub
Jeśli masz jakieś pytania lub komentarze dotyczące tego artykułu, napisz na forum. (c) 2006 CodeTwo Wszelkie prawa zastrzeżone. Artykuł ten nie może być kopiowany i/lub publikowana bez wyraźnej zgody autora. Firma CodeTwo nie rości sobie jednak żadnych praw do zaprezentowanego tu kodu, może on być modyfikowany i wykorzystywany dla dowolnych celów. Firma CodeTwo nie daje żadnych gwarancji oraz nie ponosi żadnej odpowiedzialności za działanie powyższego kodu. |