![]() |
||
![]() |
Outlook-Kontakten nachtrΣglich Formulare zuordnenIch m÷chte in Outlook 97 Kontakten nachtrΣglich ein anderes, selbstgestaltetes Formular zuzuweisen. Alle bisherigen Versuche waren erfolglos. Besonders nach dem Import von Adre▀daten gibt das Probleme, weil Outlook den importierten DatensΣtzen automatisch das Standardformular zuweist. Wissen Sie, wie ich alle meine Kontakte mit dem selbstentworfenen Formular versehen kann? Mit Outlook allein geht das nicht, sie brauchen VBA in Verbindung mit der entsprechenden Microsoft-Objektbibliothek fⁿr Outlook. Dazu benutzen Sie Word 97 oder Excel 97 als äFernsteuerungô und schreiben dort ein Makro, das den gewⁿnschten Effekt ausfⁿhrt. Weitere Voraussetzung ist, da▀ die Kontakte im Outlook-Standardordner Kontakte stehen. Auf andere Ordner mit Kontakt-Objekten greift das Makro nicht zu. ZunΣchst mⁿssen Sie die interne Bezeichnung Ihres selbstgestalteten Formulars kennen. Dazu starten Sie Outlook und klicken mit der rechten Maustaste auf den Ordnereintrag Kontakte in der Ordnerleiste . Dann rufen Sie die Eigenschaften auf, aktivieren das Register Formulare, klicken auf die SchaltflΣche Verwalten, markieren in der rechten Liste des Formular-Managers das gewⁿnschte Formular und klicken auf die SchaltflΣche Eigenschaften. Im Feld Nachrichtenklasse finden Sie die Bezeichnung. Diese besteht aus IPM.Contact, gefolgt von einem Punkt und dem Namen des Formulars, also etwa in dieser Form: IPM.Contact.Test. Jetzt starten Sie zum Beispiel Word 97, rufen den Befehl Extras û Makro û Makros auf, vergeben einen aussagekrΣftigen Namen wie OutlookKontakteFormularzuweisung und klicken auf Erstellen. Der VBA-Editor ÷ffnet sich, in den Sie die Anweisungen aus dem Listing-Kasten unten eintragen oder den Inhalt der Datei KONTFORM.TXT kopieren, die Sie auf der WIN-Monats-CD und in den WIN-Online-Diensten finden. Nun gilt es noch, die Objektbibliothek zu aktivieren. Dazu rufen Sie den Befehl Extras û Verweise auf und haken in der Liste Verfⁿgbare Verweise den Eintrag Microsoft Outlook 8.0 Object Library (nicht verwechseln mit Microsoft Office Object Library) an. Jetzt k÷nnen Sie das Makro mit dem Befehl Ausfⁿhren û Sub/UserForm ausfⁿhren starten. Es ÷ffnet in Outlook den Ordner Kontakte. Dann prⁿft es fⁿr jedes Element, ob schon eine Verknⁿpfung mit dem gewⁿnschten Formular besteht. Wenn das nicht der Fall ist, weist es dem Element das Formular zu. Natⁿrlich wird Ihr Formular nicht wie im Beispiel IPM.Contact.Test hei▀en, deshalb Σndern Sie die Namensangaben in den Zeilen acht und neun des Makros entsprechend Ihres Formularnamens. Wenn Sie im Kontakte-Ordner mit mehreren Formularen arbeiten m÷chten, lΣ▀t sich die Prⁿfbedingung anpassen. Sie k÷nnen das Makro veranlassen, direkt nach Elementen mit dem Standardformular zu suchen und nur diese mit dem neuen Formular zu verknⁿpfen. Dann sehen die Zeilen acht und neun folgenderma▀en aus: If MyItem.MessageClass = ôIPM.Contactô Then╢ MyItem.MessageClass = ôIPM.Contact.Testô╢Ebenso k÷nnen Sie die Elemente genau eines Formulartyps mit einem anderen verknⁿpfen, wenn Sie die Prⁿfbedingung so anpassen: If MyItem.MessageClass <> ôIPM.Contact.Test1ô Then╢ MyItem.MessageClass = ôIPM.Contact.Test2ô╢ Listing: Outlook-Kontakten anderes Formular zuweisen Sub OutlookKontakteFormularzuweisung () Set myOLApp = CreateObject (ôOutlook.Applicationô) Set olNamespace = myOLApp.GetNamespace (ôMAPIô) Set myContacts = olNamespace.GetDefaultFolder (olFolderContacts) Set Items = myContacts.Items For I = myContacts.Items.Count To 1 Step -1 Set MyItem = Items.Item (I) If MyItem.MessageClass <> ôIPM.Contact.Testô Then MyItem.MessageClass = ôIPM.Contact.Testô MyItem.Save End If Next End Sub |
![]() |