VBATools

Przypisane nazwy kontaktu do kategorii po adresie emali poczty przychodzącej

by on Jan.19, 2011, under Outlook, Porady

Spotkałem się z problemem grupowania wiadomości po kontaktach.

W przypadku kiedy nasz nadawca używa wielu skrzynek i nazwa wyświetlana nadawcy jest różnie zdefiniowana, odbiorca ma kłopot aby powiązać sprawy biznesowe. Powstał pomysł który przy pomocy grupowania po kategoriach zakwalifikuje odbiorców do konkretnej grupy rozpoznając adresata po adresie zapisanym w książce adresowej.

Makro realizuje wyszukanie kontaktu po adresie Email poczty przychodzącej względem kontaktów z książki adresowej i dodaje do przychodzącej wiadomości kategorie o nazwie znalezionego kontaktu (pola: FullName = Nazwisko Imię).
Znajdowanie kontaktu będzie miało skutek w przypadku kiedy nadawca posiada założony kontakt oraz jego adres jest jednym z 3ch możliwych w ramach kontaktu. Kontakty takie mogą być zwielokrotnione i mogą w Outlooku posiadając tą samą nazwę, co zwiększa ilość przyporządkowania. Metoda ta jest alternatywą na wyciągnięcie adresu SMTP wysyłającego.

Sub FindContact_from_Adressbook_and_aSign_Category_toIncomingMail(Item As Outlook.MailItem)
'MVP OShon from VBATools.pl
Dim oItems As Items, szukaj$, znaleziono As Boolean, oContact As ContactItem
Dim oContactFolder As MAPIFolder
Set oContactFolder = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderContacts)
Set oItems = oContactFolder.Items

 szukaj = """" & Item.SenderEmailAddress & """"

On Error GoTo dalej
Set oContact = oItems.Find("[Email1Address] =" & szukaj & " or " & _
 "[Email2Address] =" & szukaj & " or " & _
 "[Email3Address] =" & szukaj & "")

While Not oContact Is Nothing
DoEvents
 If Len(oContact.FullName) > 0 Then znaleziono = True: GoTo oznacz
 Set oContact = oItems.FindNext()
Wend
oznacz:
 If znaleziono = True Then
 Item.Categories = oContact.FullName
 Item.Save
 End If
dalej:
 If Not oContact Is Nothing Then Set oContact = Nothing
 If Not oItems Is Nothing Then Set oItems = Nothing
End Sub

Aby podpiąć pow kod, należy wkleić go do modułu Outlooka (Alt+F11)
i podpiąć pod regułę.

OL_Kontakt_na_kategorie1

Rys 1. Reguła nie standardowa (pusta)

OL_Kontakt_na_kategorie2

Rys 2. Brak wyboru adresatów (dotyczy wszystkich przychodzących)

OL_Kontakt_na_kategorie3

Rys 3. Skrypt to makro jakie zostało wklejone w developera Outlooka.

Pozostaje tylko Nazwa i włączenie reguły.

Na forum Outlook.pl możemy odszukać wiele przydatnych instrukcji  i procedur.

(c) Shon Oskar – www.VBATools.pl

Wszelkie prawa zastrzeżone. Żadna część ani całość tego artykułu nie może być powielana ani publikowana bez zgody autora.

:, , , , ,

1 Comment for this entry

Leave a Reply

Recently Active Members

Profile picture of vbatools
Profile picture of Joanna Subik
Profile picture of Karol Stilger
Profile picture of Anorak
Profile picture of marcinmachalowski
Profile picture of programistaaccess
Profile picture of piotrpawlik
Profile picture of Emil Wasilewski
Profile picture of kicekpicek
Profile picture of coldfusion
Profile picture of Gosia Borzęcka
Profile picture of lukaszch
Profile picture of itadministracja
Profile picture of farbenia
Profile picture of Łukasz Kałużny
Profile picture of kabzinski
Profile picture of rtynski
Profile picture of leszekbetlinski
Profile picture of Iv
Profile picture of Justyna Spychała