Thema Datum  Von Nutzer Rating
Antwort
Rot AD Userinformationen in Briefkopf einlesen
23.02.2021 12:23:39 Evi Siebenlist
NotSolved
23.02.2021 12:49:06 Gast72868
NotSolved
24.02.2021 00:07:36 Gast32488
Solved
24.02.2021 10:08:42 Evi
Solved
24.02.2021 15:50:56 Evi
NotSolved
24.02.2021 18:18:46 Gast37220
NotSolved
24.02.2021 18:20:43 Gast37220
NotSolved
24.02.2021 18:17:56 xlKing
Solved
25.02.2021 12:09:25 Evi
NotSolved
25.02.2021 19:33:50 xlKing
NotSolved
25.02.2021 19:47:05 Gast37220
NotSolved
25.02.2021 19:53:19 Gast37220
Solved
01.03.2021 09:25:14 Evi
NotSolved
03.03.2021 16:18:46 Evi
NotSolved
04.03.2021 09:10:26 Gast39571
Solved
04.03.2021 09:46:50 Evi
NotSolved
04.03.2021 10:55:14 Gast21527
Solved
22.03.2021 11:32:03 Evi
NotSolved

Ansicht des Beitrags:
Von:
Evi Siebenlist
Datum:
23.02.2021 12:23:39
Views:
1157
Rating: Antwort:
  Ja
Thema:
AD Userinformationen in Briefkopf einlesen

Einen schönen guten Tag,

ich verzweifel noch, habe schon sämtliche Foren durchgestörbert und komme nicht weiter. 
Ich will auf Basis einer Wordvorlage *.dotm Userinformationen aus dem Active Directory einlesen. Die Vorlage öffne ich über einen Doppelklick, um nicht die Vorlage direkt zu öffnen, sondern eine *.doc zu erzeugen.

Ich habe schon AutoNew(), Auto_Open und einige andere Dinge probiert, aber das Makro startet nach Doppelklick einfach nicht. Was mach ich verkehrt?
Ich bin kein VBA Profi und habe mir den vorhanden Code auch aus dem Internet zusammengebastelt. Ich wäre so dankbar über Hilfe.

Die Vorlage liegt auf einem Netzlaufwerk und soll mit den Daten des jeweils angemeldeten Users gefüllt werden bei Doppelklick.

Markiere ich die Felder manuell und klicke auf F9, werden die Daten richtig eingelesen.

Ich hoffe, ich konnte mein Problem einigermaßen beschreiben.

Hier der Quellcode. Dieser ist abgespeichert unter: TemplateProject - ThisDocument:
 

Private Sub Document_Open()
 
'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
ActiveDocument.Variables("Vorname").Value = objBenutzer.givenName
ActiveDocument.Variables("Initialen").Value = objBenutzer.initials
ActiveDocument.Variables("Nachname").Value = objBenutzer.sn
ActiveDocument.Variables("Anzeigename").Value = objBenutzer.DisplayName
ActiveDocument.Variables("Beschreibung").Value = objBenutzer.Description
ActiveDocument.Variables("Buero").Value = objBenutzer.PhysicalDeliveryOfficeName
ActiveDocument.Variables("Rufnummer").Value = objBenutzer.telephoneNumber
ActiveDocument.Variables("Email").Value = objBenutzer.mail
ActiveDocument.Variables("Webseite").Value = objBenutzer.wWWHomepage
ActiveDocument.Variables("Strasse").Value = objBenutzer.streetAddress
ActiveDocument.Variables("Postfach").Value = objBenutzer.postOfficeBox
ActiveDocument.Variables("Ort").Value = objBenutzer.l
ActiveDocument.Variables("Bundesland").Value = objBenutzer.st
ActiveDocument.Variables("Postleitzahl").Value = objBenutzer.postalCode
ActiveDocument.Variables("Land").Value = objBenutzer.CO
ActiveDocument.Variables("Benutzeranmeldename").Value = objBenutzer.sAMAccountName
ActiveDocument.Variables("RufnummernPrivat").Value = objBenutzer.homePhone
ActiveDocument.Variables("RufnummernPager").Value = objBenutzer.pager
ActiveDocument.Variables("RufnummernMobil").Value = objBenutzer.mobile
ActiveDocument.Variables("RufnummernFax").Value = objBenutzer.facsimileTelephoneNumber
ActiveDocument.Variables("RufnummernIPTelefon").Value = objBenutzer.ipPhone
ActiveDocument.Variables("Anmerkungen").Value = objBenutzer.info
ActiveDocument.Variables("Position").Value = objBenutzer.Title
ActiveDocument.Variables("Abteilung").Value = objBenutzer.department
ActiveDocument.Variables("Firma").Value = objBenutzer.company
ActiveDocument.Variables("Vorgesetzter").Value = objBenutzer.manager

' und zum Schluss die Werte aller Felder einmal aktualisieren (damit die neuen Werte auch sofort angezeigt werden)
ActiveDocument.Fields.Update

 
End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:

 
 

  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot AD Userinformationen in Briefkopf einlesen
23.02.2021 12:23:39 Evi Siebenlist
NotSolved
23.02.2021 12:49:06 Gast72868
NotSolved
24.02.2021 00:07:36 Gast32488
Solved
24.02.2021 10:08:42 Evi
Solved
24.02.2021 15:50:56 Evi
NotSolved
24.02.2021 18:18:46 Gast37220
NotSolved
24.02.2021 18:20:43 Gast37220
NotSolved
24.02.2021 18:17:56 xlKing
Solved
25.02.2021 12:09:25 Evi
NotSolved
25.02.2021 19:33:50 xlKing
NotSolved
25.02.2021 19:47:05 Gast37220
NotSolved
25.02.2021 19:53:19 Gast37220
Solved
01.03.2021 09:25:14 Evi
NotSolved
03.03.2021 16:18:46 Evi
NotSolved
04.03.2021 09:10:26 Gast39571
Solved
04.03.2021 09:46:50 Evi
NotSolved
04.03.2021 10:55:14 Gast21527
Solved
22.03.2021 11:32:03 Evi
NotSolved