Also mit dem Makro hier:
Option Explicit
Private Sub Document_New()
MsgBox "Hallo, hier ist Document_New()"
'Variablen für AD-Abfrage
Dim varQuery As String
Dim objSystemInfo As Object
Dim objBenutzer As Object
' Active Directory Informationen des angemeldeten Benutzers lesen
Set objSystemInfo = CreateObject("ADSystemInfo")
varQuery = "LDAP://" & objSystemInfo.UserName
' mit Nachfolgender Zeile haben wir einen Zeiger auf das AD-Objekt des Benutzers
' damit können wir alle AD-Felder abfragen
Set objBenutzer = GetObject(varQuery)
' nun füllen wir die DOCVARIABLEN im Dokument mit diesen Werten
With ActiveDocument
.Variables("Vorname").Value = objBenutzer.givenName
.Variables("Initialen").Value = objBenutzer.initials
.Variables("Nachname").Value = objBenutzer.sn
.Variables("Anzeigename").Value = objBenutzer.DisplayName
.Variables("Beschreibung").Value = objBenutzer.Description
.Variables("Buero").Value = objBenutzer.PhysicalDeliveryOfficeName
.Variables("Rufnummer").Value = objBenutzer.telephoneNumber
.Variables("Email").Value = objBenutzer.mail
.Variables("Webseite").Value = objBenutzer.wWWHomepage
.Variables("Strasse").Value = objBenutzer.streetAddress
.Variables("Postfach").Value = objBenutzer.postOfficeBox
.Variables("Ort").Value = objBenutzer.l
.Variables("Bundesland").Value = objBenutzer.st
.Variables("Postleitzahl").Value = objBenutzer.postalCode
.Variables("Land").Value = objBenutzer.CO
.Variables("Benutzeranmeldename").Value = objBenutzer.sAMAccountName
.Variables("RufnummernPrivat").Value = objBenutzer.homePhone
.Variables("RufnummernPager").Value = objBenutzer.pager
.Variables("RufnummernMobil").Value = objBenutzer.mobile
.Variables("RufnummernFax").Value = objBenutzer.facsimileTelephoneNumber
.Variables("RufnummernIPTelefon").Value = objBenutzer.ipPhone
.Variables("Anmerkungen").Value = objBenutzer.info
.Variables("Position").Value = objBenutzer.Title
.Variables("Abteilung").Value = objBenutzer.department
.Variables("Firma").Value = objBenutzer.company
.Variables("Vorgesetzter").Value = objBenutzer.manager
' und zum Schluss die Werte aller Felder einmal aktualisieren (damit die neuen Werte auch sofort angezeigt werden)
.Fields.Update
End With
End Sub
Wenn direkt beim Öffnen der Dokumentenvorlage die MsgBox anzeigt. Dann passt der Teil schon mal.
Dann muss es etwas mit dem LDAP zu tun haben. Da kann ich dir allerdings nicht weitehelfen.
|