Lotus Notes Adressbuch auslesen |
|
Wer Lotus Notes R5 (Private Edition) verwendet und dort seine Adressen im privaten Adressbuch pflegt, kann diese über das Notes-Objekt in VBA auslesen und z.B. in ein Word-Formular einfügen. Dazu muss allerdings kein Verweis in der VBA-IDE auf die Lotus Notes Automation Classes gesetzt sein, sondern es reicht, wenn Lotus Notes
auf dem Rechner korrekt installiert wurde. In diesem Fall wird über das NotesSession-Objekt eine Verbindung zu Lotus Notes hergestellt und
auf die lokale Adressdatenbank zugegriffen. Zum Download steht eine Userform bereit, in der sowohl die Anbindung und Anzeige der Adressbucheinträge enthalten sind als auch die _bergabe der einzelnen Daten nach Word in entsprechende Formularfelder (Das Beispiel zeigt die Userform mit einem ausgelesenen Adressbucheintrag). adressbuch = "names.nsf" ansicht = "People" I = 0 Label11.Caption = sText1 ' Set objNotes = GetObject("", "Notes.NotesSession") If objNotes Is Nothing Then Set objNotes = CreateObject("Notes.NotesSession") End If Set LNdb = objNotes.GETDATABASE("", adressbuch) Set LNview = LNdb.GETVIEW(ansicht) Call LNview.Refresh Set LNdoc = LNview.GETFIRSTDOCUMENT ReDim lnarray(100, 50) Do While Not LNdoc Is Nothing Set Item = LNdoc.GETFIRSTITEM("lastname") Set item1 = LNdoc.GETFIRSTITEM("firstname") Set item2 = LNdoc.GETFIRSTITEM("mailaddress") Set item3 = LNdoc.GETFIRSTITEM("phonenumber") Set item4 = LNdoc.GETFIRSTITEM("officephonenumber") Set item5 = LNdoc.GETFIRSTITEM("HomeAddress") Set item6 = LNdoc.GETFIRSTITEM("Zip") Set item7 = LNdoc.GETFIRSTITEM("Country") Set item8 = LNdoc.GETFIRSTITEM("Location") 'weitere Felder: ' HomeAddress /BusinessAddress ' Zip /OfficeZip ' Country/OfficeCountry ' Location ' oder über die Feldeigenschaften... ' array1 = Item.Values array2 = item1.Values array3 = item2.Values array4 = item3.Values array5 = item4.Values array6 = item5.Values array7 = item6.Values array8 = item7.Values array9 = item8.Values lnarray(I, 0) = CStr(array1(0)) lnarray(I, 1) = CStr(array2(0)) lnarray(I, 2) = CStr(array3(0)) lnarray(I, 3) = CStr(array4(0)) lnarray(I, 4) = CStr(array5(0)) lnarray(I, 5) = CStr(array6(0)) lnarray(I, 6) = CStr(array7(0)) lnarray(I, 7) = CStr(array8(0)) lnarray(I, 8) = CStr(array9(0)) ComboBox1.AddItem CStr(array1(0)) Set LNdoc = LNview.GETNEXTDOCUMENT(LNdoc) I = I + 1 If I > 100 Then Exit Do Loop |
Besucher: 0 online | 0 heute | 0 diesen Monat | 2219178 insgesamt | Seitenaufrufe: 76 | Letzte Änderung: 24.06.2006 | © 2001-18 Christian Freßdorf | ||||
In Begriffen denken,
in Kategorien einteilen,
das ist so automatisch wie Luftholen. Wolf Biermann |
powered by phpCMS and PAX |