Outlook-Signatur mit Word-Vorlage automatisch erstellen (VBS)
Das hier vorgestellte Skript generiert automatisch aus einer Word-Vorlage und beliebigen Active Directory-Attributen des ausführenden Benutzers eine individuelle E-Mail-Signatur für Outlook.
Erstellung der Word-Vorlage
Die Gestaltung der Word-Vorlage ist recht simpel:
In einem neuen Word-Dokument werden alle statischen Inhalte der Signatur (wie z.B. „Telefon: „, oder „Fax: “ vor der eigentlichen Nummer) wie gewohnt eingefügt und formatiert.
Für die dynamischen Elemente der Signatur werden dann Textmarken an den gewünschten Positionen eingefügt; die Formatierung der Elemente wird vom Absatz in den eingefügt wird übernommen. Die Benennung der Textmarken ergibt sich aus dem Attribut-Namen des einzufügenden AD-Attributs. Sollen beispielsweise in die erste Zeile der Vorlage Vor- und Nachname des Mitarbeiters erscheinen, sollte diese folgendermaßen aussehen:
<Textmarke „givenName“> <Textmarke „sn“>
…
Für den Fall, dass ein Attribut mehrfach verwendet werden soll, kann zur Unterscheidung der Textmarken ein beliebiger String mit Unterstrich angehängt werden; z.B. einfach durchnummerieren:
<Textmarke „givenName_1“> …
<Textmarke „givenName_2“> …
Eine Übersicht der m.E. gebräuchlichsten Werte habe ich in folgender Abbildung zusammengestellt:
Des Weiteren ist dem Download eine Beispiel-Vorlage beigefügt.
Generierung der Signatur
Ist nun die Vorlage wunschgemäß gestaltet und mit den benötigten Textmarken versehen, wird es Zeit das Skript damit zu „füttern“. Dies geschieht über die verfügbaren Kommandozeilenparameter:
cscript.exe CreateOutlookSig.vbs -t <WordTemplate> [-s <SignatureName>] [-n] [-r [<WordTemplateReply> [-rs <ReplySigNameSuffix>]] [-rl] [-l] [-c]
Parameter | Beschreibung | Default |
-t | Pfad und Dateiname der Word-Vorlage | – |
-s | Signaturname (optional) | Nachname des Benutzers |
-n | Als Standardsignatur für neue Nachrichten setzen (optional) | Nein |
-r | Als Standardsignatur für Antworten/Weiterleitungen setzen (optional) Zusätzlich kann Pfad und Dateiname für eine abweichende Antwort-/Weiterleitungssignatur angegeben werden (optional) | Nein |
-rs | Setzt Suffix für Antwort-/Weiterleitungssignaturnamen (optional) | _ReFwd (nur bei -r <WordTemplateReply>) |
-l | Hyperlinks für E-Mail-Adresse und Homepage setzen (optional) | Nein |
-rl | Zeilen mit nicht gefüllten Textmarken entfernen (optional) | Nein |
-c | Erstellung der Signatur nur bei vorhandenem Outlook-Profil (optional) | Nein |
Es müssen Pfad und Name der Word-Vorlage durch den Parameter -t übergeben werden. Optional kann der Name der Signatur mit -n festgelegt werden – bleibt dieser Parameter ungenutzt, wird automatisch der Nachname (sn)des ausführenden Benutzers als Signaturname verwendet. Die erstellte E-Mail-Signatur kann zusätzlich über die Parameter -n und -r als Standardsignatur für neue E-Mails bzw. Anworten/Weiterleitungen gesetzt werden.
Für Antworten und Weiterleitungen kann eine andere Vorlage verwendet werden, indem hinter dem Parameter -r noch ihr Pfad und Dateiname übergeben wird. Sie wird standardmäßig <SignatureName>_ReFwd benannt; ein eigenes Suffix kann über den Parameter -rs festgelegt werden.
Mit -l werden die in die Signatur eingefügte E-Mail-Adressen und URLs mit entsprechenden Hyperlinks versehen. Durch -rl werden Zeilen, die eine nicht gefüllte Textmarke enthalten, komplett entfernt.
Durch Nutzung von -c kann verhindert werden, dass eine Signatur für User generiert wird, bei denen kein Outlook-Profil eingerichtet wurde.
Die Ausführung des Skripts kann dann bspw. so aussehen:
cscript.exe CreateOutlookSig.vbs -t \\bistron.eu\dfs\vorlagen\OutlookSignatur.dot -s Standardsignatur -n -r
Die so erstellte neue E-Mail-Signatur wird in Outlook automatisch als Standard-Signatur für Antworten und Weiterleitungen gesetzt.
Ist bereits eine Outlook-Signatur mit gleichem Namen vorhanden, wird diese durch das Skript ersetzt!
Natürlich kann das Skript auch als Benutzer-An-/Abmeldeskript per Gruppenrichtlinie zugewiesen werden. So kann z.B. sichergestellt werden, daß die Signaturinhalte immer synchron mit den im AD hinterlegten Daten ist und auch ggf. durchgeführte Designanpassungen zeitnah von den Benutzern übernommen werden.
In Outlook 2003 kann es zu Formatierungsproblemen kommen, wenn nicht Microsoft Word als E-Mail-Editor genutzt wird.
Bei Unterschieden im Zeilenabstand, oder der Hyperlink-Schriftart zwischen Word-Vorlage und Outlook-Signatur kann die in Alois‘ Kommentar beschriebene Anpassung der Formatvolagen Abhilfe schaffen.
Downloads
- Skript: CreateOutlookSig.vbs (ZIP) – Letzte Änderung: 19.07.2017
11. Juni 2012 um 16:26 Uhr - -
Excellent! Funktioniert hervorragend!
Danke und Grüße,
Knut
17. Juli 2012 um 10:23 Uhr - -
Hallo,
kann ich das Eingabeformular verändern? Wenn ja, wie?
DANKE
VG
Steffen
17. Juli 2012 um 22:56 Uhr - -
Hallo,
Ganz ein Cooles Script, ich hatte das ganze etwas anders gelöst, deines ist 10000 mal besser. Wo ich noch anstehe ist folgender Punkt: Ich möchte die E-Mail Adresse verlinken. Wie kann ich das bewerkstelligen?
Gruss
Thomas
18. Juli 2012 um 17:56 Uhr - -
Hallo Thomas,
auf die Schnelle wahrscheinlich am einfachsten durch eine Fallunterscheidung in der Schleife (Zeile 96-98). Also wenn die Bookmark „mail“ erreicht ist, dort einen Hyperlink einfügen, anstatt nur den Text.
Könnte etwa so aussehen:
17. Juli 2012 um 22:57 Uhr - -
@Steffen
Im Word dokument musst du variabeln als Textmarke -> Wordfunktion einfügen. Dann klappt das ganze.
Gruss Thomas
10. August 2012 um 11:15 Uhr - -
Hallo, hallo
Ist es möglich per VB den Standard Mail Account auzulesen und dort den Wert „New Signature“ anzupassen. Die meisten Tools oder Scripte setzen die Signatur nämlich bei jedem Angelegten Account und ich habe im meinem Privaten Account nicht gerne meine geschäftliche Signatur 😉
18. September 2012 um 13:55 Uhr - -
Hallo Dennis,
sehr schönes Script, allerdings scheint es bei mir nicht zu funktionieren: Wenn ich das Script ausführe, läuft es zwar scheinbar durch, jedoch ändert sich nichts an den Outlook-Einstellungen.
Ich will die Signatur für ein Outlook 2010 32-Bit setzen.
Gibt es bekannte Probleme mit dem Script und OL2010?
18. September 2012 um 14:44 Uhr - -
Okay, ich habe den Fehler gefunden: Ich habe den Pfad zur Outlook-Vorlage bei meinem Test relativ zum VBS-Script angegeben. Das Script erwartet die Vorlage dann irgendwo in C:Windows… und schlägt somit natürlich fehl.
24. Juli 2013 um 14:53 Uhr - -
Absolut perfekt, vielen Dank.
Funktioniert tadellos, hab zwar etwas gebraucht um dahinter zu steigen, aber nun funktioniert es.
🙂
24. Juli 2013 um 15:19 Uhr - -
Gerade ist mir noch was aufgefallen.
Gibt es eine Möglichkeit, eine komplette Zeile zu löschen, wenn das AD-Attribut leer ist?
Beispiel:
Ich sollte in der Signatur Telefon-, Mobil- und Fax-Nummer drin haben, aber nicht jeder hat alle 3 Dinge auch wirklich in der AD stehen (weil nicht vorhanden).
So wie es jetzt ist, würde hinter z.B. „Mobil:“ nichts stehen…
ich hoffe es ist klar, was ich meine
24. Juli 2013 um 20:26 Uhr - -
Hallo Fabian,
verstehe das Problem, habe jedoch leider spontan keine vernünftige Lösung parat; werde mir aber mal ein paar Gedanken dazu machen und mich nochmal melden…
24. September 2013 um 19:24 Uhr - -
Hi,
super Script. Bevor ich anfange zu testen wie sieht es aus mit einem Bild was in die Signatur mit eingepflegt werden soll?
Gibt es schon eine brauchbare Lösung wegen der leeren Zeilen von meinem Vorredner?
Grüße
Jascha
24. September 2013 um 20:13 Uhr - -
Hi jascha.
Das Problem mit den Leerzeichen wurde mit der aktuellsten Version behoben.
Bilder sind auch kein Problem.
Ich selbst habe bei uns ein Firmenlogo mit in der Mail.
Am besten bindest du GIFs ein, die verbrauchen am wenigsten Speicher (weiß=leer)
24. September 2013 um 20:20 Uhr - -
Da warst Du wohl schneller 😉
24. September 2013 um 20:19 Uhr - -
Hallo Jascha,
Bilder werden problemlos aus der Vorlage in die Signatur übernommen.
Zum Entfernen von Zeilen mit leeren Textmarken/Attributen kann die Option
-rl
verwendet werden.MfG
1. Oktober 2013 um 19:49 Uhr - -
Hi,
danke erstmal für die vorherige Hilfe. Hat alles soweit geklappt.
Jetzt versuche ich aber nach einer Möglichkeit zwei Signaturen gleichzeitig ausführen zu lassen. Und zwar eine die für neue Nachrichten als standard gesetzt werden und dann noch eine verkürzte Signatur die nur für Relply/Forward genutzt werden soll. Lasse ich beide beim anmelden starten überschreibt er ja die für neue Nachrichten.
Gibt es da eine Möglichkeit im Script noch was mit einzubauen das man zwei Vorlagen einbauen kann?
Den zweimal das Script beim starten auszuführen kostet Zeit und ist auch nicht immer fehlerfrei 😉
Grüße
Jascha
2. Oktober 2013 um 18:36 Uhr - -
Hallo Jascha,
eigentlich dürfte nichts überschrieben werden, wenn Du für Neu und Reply Signaturen mit unterschiedlichen Namen anlegst – z.B. so:
cscript.exe CreateOutlookSig.vbs -t OutlookSignatur_neu.dot -s Standardsignatur_Neu -n
cscript.exe CreateOutlookSig.vbs -t OutlookSignatur_reply.dot -s Standardsignatur_Reply -r
Wenn die Ausführung für die Anmeldung zu lange dauert, könnte man auch überlegen, es bei der Abmeldung ausführen zu lassen – hier wird eine Verzögerung i.d.R. als weniger störend empfunden…
Falls Du mit den o.g. Parametern noch Probleme beim Anlegen Deiner Signaturen haben solltest, bzw. die Auführung bei Abmeldung nicht in Frage kommt, meld Dich am besten kurz über das Kontaktformular…
MfG
2. Oktober 2013 um 20:11 Uhr - -
Hi,
danke hatte ich zum Schluss auch bemerkt. Hatte vergessen einen Namen mitzugeben. Also bis jetzt klappt alles wunderbar.
Wäre ja trotzdem vielleicht eine überlegung Wert mit einem Aufruf die zwei möglichen Signaturen (NeueMail;Antworten/Weiterleiten) einzupflegen 😉
Grüße
21. Oktober 2013 um 11:23 Uhr - -
Hallo, ich habe das Problem das das Script zwar ausgeführt wird, aber leider keinerlei Meldungen zurück gibt und leider auch nichts einträgt ?!
Ich habe das Script aus dem Logon Script mit UNC Pfaden gestartet und auch lokal am Client über die Kommandozeile als Admin und als „normaler“ User.
Als Outlook kam einmal das 2007 und einmal das 2010 zum Einsatz.
Liebe Grüße
30. Oktober 2013 um 16:55 Uhr - -
Hi Dennis,
Kann man auch die AD Attribute „url“ mit einbinden (neben Webseite: Andere…)? Bzw. wie müsste das Script hier angepasst werden das alle Werte aus „url“ mit ausgegeben werden?
Kann das als (URL) Liste ausgegeben werden?
z.B. aktuelle Werte: http://www.Seite1.de ; http://www.Seite2.de
Ausgabe wie folgt:
http://www.Seite1.de
http://www.Seite2.de
Gruß
Janosch
31. Oktober 2013 um 00:15 Uhr - -
Hallo,
super Script. Nur ein Problem. Ich krieg die Fehlermeldung „Die Verzeichniseigenschaft wurde nicht im Cache gefunden. Code 8000500D“, wenn der Benutzer keinen Vornamen (firstname) oder Nachnamen (lastname) hat.
Ich kann zwar das Script ein wenig erweitern, daß das vorher geprüft wird, aber vielleicht kannst du´s ja gleich mit einbauen.
Aber auf jeden Fall danke für das Script.
Gruß
Martin
31. Oktober 2013 um 19:39 Uhr - -
@Jascha
Mit der aktualisierten Version kann über den Parameter -r jetzt eine weitere Vorlage für Antworten/Weiterleitungen an das Skript übergeben werden (s.o.).
@Michael
Schwer zu sagen… Meld‘ Dich am besten bzgl. Austauschs weiterer Details über das Kontaktformular.
@Janosch
Versuch’s mal mit der aktualisierten Version… 😉
@Martin
Aufgrund des
On Error Resume Next
im Skript dürfte der Fehler kein Problem darstellen. Doch um ihn gänzlich zu vermeiden, kannst Du auch statt der Attributefirstname
undlastname
(IADsUser)givenName
bzw.sn
(AD) verwenden (s. Link). Bei Verwendung der AD-Attribute tritt der Fehler nicht auf.31. Oktober 2013 um 23:18 Uhr - -
Super Danke. Werd ich übers Wochenende ausgiebig testen.
Eine neue Frage stellt sich mir aber. Das Script wird ja immer ausgeführt also auch dann wenn Outlook noch nicht eingerichtet ist. Gibt es eine Möglichkeit im Script eine Abfrage zu hinterlegen ob Outlook schon konfiguriert wurden ist oder nicht und dann entweder Script beenden oder weiter ausführen.
Machbar?
Grüße
Jascha
1. November 2013 um 08:50 Uhr - -
Moin Moin Dennis,
besten Dank 🙂 sieht soweit super aus. Mit der Option:
‚* Format Links
objSelection.AutoFormat
Kann ich leider nicht die Schriftart der Links verändern? Oder gebe ich mit (objSelection.Font.Name = „Arial“) etwas falsches an?
Gruß
Janosch
6. November 2013 um 19:39 Uhr - -
Hallo Janosch,
eigentlich sollten die Links die Schriftart haben, die Du in der Vorlage festgelegt hast. Wenn Du also die Stelle mit der Textmarke
url
in Arial formatierst, sollten die URLs auch mit gleicher Formatierung in der Signatur ankommen. Eine Anpassung des Skripts sollte nicht notwendig sein…MfG
8. Mai 2014 um 11:48 Uhr - -
Hallo, ich habe ein Problem mit diesem Script bei der Verteilung über eine Gruppenrichtlinie.
Ich habe ein Batch Script mit diesem Inhalt auf einen UNC PFad auf meinen DC gelegt, und via Gruppenrichtlinie das Script für alle Benutzer verteilt:
cscript.exe \domainnetlogonSignaturCreateOutlookSig.vbs -t \domainnetlogonSignaturSignatur.dot -s Standardsignatur -n -r
Mit dem PAUSE Befehl konnte ich mir die Fehlermeldung anschauen.
„UNC-Pfade werden nicht unterstützt“
Das Problem ist der Speicherort des Script so wie ich das sehe.
Wenn ich das batch-Script auf den Client kopiere und von dort aus ausführe, funktioniert es. Stellt sich die Frage: wie löse ich mein Problem ohne das Script vorher auf den Client kopieren zu müssen?
12. Mai 2014 um 19:10 Uhr - -
Hallo Alexander,
dass die Verwendung eines UNC-Pfads als Arbeitsverzeichnis nicht erlaubt ist, dürfte m.E. nicht die Ursache sein; eher „normal“ an dieser Stelle.
Erlauben könnte man es über einen Registry-Key (s. KB156276), doch benötigt habe ich ihn bisher nur bei Verwendung relativer Pfade (ohne den Key gehen sie von %WinDir% aus, statt vom UNC-Pfad).
Falls Du das Problem noch nicht beheben konntest, kannst Du mir eine Nachricht über das Kontakt-Formular schicken.
MfG
22. Mai 2014 um 13:53 Uhr - -
Hallo,
danke für das tolle Skript, ist genau was ich gesucht habe. Ein kleiner ‚Bug‘ ist mir noch aufgefallen: bei AD’s mit zu vielen „Unter-OU’s“ kommt es zu dem Phänomen dass die Vorlage zwar als Signatur eingetragen ist, die Textmarken jedoch leer bleiben. Kürzt man den OU Pfad beispielsweise durch umbenennen wird die Vorlage wieder korrekt befüllt. Ohne ein VB Profi zu sein vermute ich ein zu kurz definiertes Array oder ähnliches.
Vielen Dank und liebe Grüße
4. Juli 2014 um 14:47 Uhr - -
Hallo,
gibt es noch eine Möglichkeit die Signatur als Standard für mehrere Outlook Konton zu setzen?
21. Juli 2014 um 18:57 Uhr - -
Hi,
bisher nicht. Schaue mal ob sich da was machen lässt…
MfG
15. Juli 2014 um 14:40 Uhr - -
Hi Dennis, vielen Dank für das tolle Skript, es funktioniert inhaltlich einwandfrei. Das Problem, das sich mir in den Weg stellt, hat mit der Formatierung zu tun. Alle durch das Skript erzeugten Zeilen haben einen Zeilenabstand von 1,15 und einen „Abstand vor“ von 10Pt.
Und was soll ich sagen, ich habe keine Ahnung wo diese Einstellungen herkommen. In der Vorlage für das Skript (OutlookSignatur.dotx) und in den Dateien Normal.dotm und NormalEmail.dotm ist der Zeilenabstand 1,0 und der „Abstand vor“ 0Pt., so wie ich das auch für die Signatur gerne hätte.
Ich weiß, dass das nichts mit dem Skript zu tun hat, aber hat irgendjemand einen Idee wo diese Werte herkommen oder wie ich sie (automatisiert) ändern kann?
LG
Brauni
21. Juli 2014 um 19:06 Uhr - -
Hi,
habe spontan leider auch keine Ahnung wo es herkommt.
Welche Word-/Outlook-Version verwendest Du?
Mit welchen Parametern wird das Skript gestartet?
MfG
22. Juli 2014 um 06:10 Uhr - -
Hi,
ich verwende Office Professional 2010.
Das Skript starte ich so:
cscript „C:…CreateOutlookSig.vbs“ -t „C:…OutlookSignatur.dotx“ -s test -n -r -l
Irgendwelche Ideen??
LB Brauni
23. Juli 2014 um 23:35 Uhr - -
Hi,
hatte Dir einfachheitshalber die Antwort per Mail geschickt…
MfG
7. Oktober 2014 um 17:18 Uhr - -
Hallo,
ich beobachte das fast gleiche Verhalten wie Brauni am 15.7. berichtet hat. Leider kann ich die Antwort bzw. Lösung des Rätsels nicht sehen..
Bei mir ist der Zeilenabstand 1,15 und der “Abstand nach” ist 10Pt.
viele Grüße
Alois
9. Oktober 2014 um 08:59 Uhr - -
Hallo Dennis,
Sorry, dass ich mich erst jetzt melde, war gesundheitsbedingt lange eingeschränkt.
Damit das ganze hier für jeden nachvollziehbar bleibt:
Dennis hatte mir per Mail empfohlen den Parameter -L mal wegzulassen, das hat jedoch keine Änderung ergeben.
Zusätzlich sollte ich mal das Kommentarzeichen in der Zeile „‚objWord.Visible = True“ weglassen und die Zeilen „objDoc.Close“ und „objWord.Quit“ auskommentieren, damit Word nicht geschlossen wird.
So kann man feststellen, ob die Formatierung schon in Word schiefläuft.
Und: sie läuft nicht schief, in Word ist noch alles in Ordnung.
Bis jetzt habe ich nicht herausgefunden wo diese Formatierung herkommt.
Da ich mehr in VB als in VBS zu Hause bin, habe ich angefangen mir dort ein entsprechendes Programm zu erstellen.
In VB bin ich immerhin schon so weit, dass ich über die ParagraphFormat Eigenschaft des Selection Objekts den Zeilenabstand und den Abstand vor und nach dem Absatz setzen kann.
Der entsprechende Part sieht dann so aus:
‚Signatur Formatieren
‚Absatzabstände und Zeilenabstand setzen
objSelection = objDoc.Range(0, objSelection.End) ‚alles markieren
objSelection.ParagraphFormat.LineSpacingRule = WdLineSpacing.wdLineSpaceSingle ‚Zeileabstand
objSelection.ParagraphFormat.SpaceAfter = 0 ‚Abstand nach
objSelection.ParagraphFormat.SpaceBefore = 0 ‚Abstand vor
In VB baue ich mir die gesamte Signatur selbst zusammen. Ich suche mir die Impressumsdaten, Logos, Links und die AD Userdaten zusammen, erzeuge damit ein Worddokument, speichere die Signatur im Outlook und aktiviere sie.
Dadurch, dass ich hier frei von einer Wordvorlage bin, kann ich entsprechende Parameter wie Zeilen- und Absatzabstände selber definieren. Auf diesem Wege klappt es, die Formatierung wird nicht verändert.
Für das VBS Skript dürften die Erkenntnisse jedoch irrelevant sein.
Es sei denn, man kann vom Skript auf bestimmte Zeilen in der Vorlage zugreifen und über die ParagraphFormat Funktionen die entsprechenden Werte setzen.
Wie gesagt, ich kann mir nicht erklären, wo die Werte für den Zeilen- und Absatzabstand herkommen. Die Normal.dotx und die Outlook.dotx sind korrekt eingestellt.
Wenn noch jemand einen Tipp hat, ich teste gerne mit.
LG
Brauni
27. Oktober 2014 um 13:43 Uhr - -
Danke für die Rückmeldungen.
Folgende Ursache konnte ich für die fehlerhaften Absatz-Abstände rausfinden:
Das Problem betrifft Absätze, die die Formatvorlage „Standard“ verwenden.
Nach der Bearbeitung durch CreateOutlookSig.vbs wird ein Standardwert von Word 2010 verwendet. Der Wert 1,15 ist hier dokumentiert: http://office.microsoft.com/de-at/word-help/anpassen-der-zeilenabstande-zwischen-text-oder-absatzen-HP010368776.aspx
Korrigieren konnte ich das so:
Ich habe in der Signaturvorlage eine Formatvorlage erstellt, die z.B. Signaturtext heisst.
Das Format ist darf gleich wie bei der Formatvorlage Standard sein, wichtig ist nur, dass die Formatvorlage nicht Standard heisst.
Alle Absätze in der Signaturvorlage müssen diese Formatvorlage verwenden.
Nun passen die Zeilenabstände auch nach Verwendung von CreateOutlookSig.vbs.
Eine weitere Erkenntnis hatte ich dabei gewonnen:
Die Hyperlinks erhielten in der HTML-Signatur immer die Schriftart Times New Roman, obwohl in der Vorlage Arial verwendet wurde.
Für die Hyperlinks ist eine weitere Formatvorlage namens Hyperlinks zuständig. In dieser Formatvorlage muss die gewünschte Schriftart eingestellt werden.
Die Hyperlinks-Formatvorlage ist nicht immer sichtbar. Da hilft es, die Liste aller Formatvorlagen mit Strg+Alt+Shift+s aufzurufen.
viele Grüße
Alois
28. Oktober 2014 um 06:58 Uhr - -
Hallo Alois,
vielen Dank für die Rückmeldung – hoffe, dass das Problem bei anderen auf diesem Wege auch umgangen werden kann. Konnte es selbst leider nie nachstellen…
MfG
Dennis
22. Oktober 2015 um 10:56 Uhr - -
Das mit der Formatierung ist normal und das beschriebene Phänomen ein Benutzerfehler. Seit Word 2010 hält sich Microsoft nämlich an die offiziellen Regelungen, dass Absätze auch wie Absätze aussehen müssen (10 pt nach, 1,15 pt). In der Vorlage ist nach jeder Zeile ein Absatzende, der dies logischerweise bei neuen Dokumenten – der Signatur – provoziert.
Nachstellen lässt sich das, indem man seine normal.dotx bzw normal.dotm einfach mal umbenennt. Word legt dann eine neue an, unter „Absatz“ kann man nun die o.g. Werte finden.
Die Lösung des Problems ist extrem simpel: in der Vorlage einfach Zeilenende (Shift-Return) anstelle von Absatzende (Return) verwenden. Bei eingeblendeten Sonderzeichen ist das ein kleiner Pfeil wie auf der Enter-Taste.
Ich hoffe mal, dass das das Problem war und ich damit helfen konnte. Das Skript ist nämlich so genial, dass es mir half und da versuche ich anderen auch gerne zu helfen.
19. August 2014 um 11:16 Uhr - -
Hallo,
ich habe dein Skript auf Outlook 2010 probiert und da funktioniert es tadellos. Ich habe jedoch auch Rechner mit Outlook 2013 und da funktioniert es leider nicht. Das Skript läuft durch, doch eine Signatur ist im Outlook leider nicht zu sehen.
19. August 2014 um 16:40 Uhr - -
Hallo Daniel,
hast Du es mit der aktuellen Version vom 13.08.2014 versucht? Falls das Problem damit auch auftritt, meld Dich bitte noch mal über das Kontaktformular.
26. August 2014 um 17:54 Uhr - -
Hallo und vielen Dank für die Antwort. Ja ich habe es mit der aktuellen Version probiert. Ich habe mich über das Kontaktformular gemeldet.
Seltsamerweise ging es mit einer älteren Version.
27. August 2014 um 20:58 Uhr - -
Dann nochmals vielen Dank für den Hinweis auf den Fehler.
Das Problem sollte mit der aktuellen Version (27.08.2014) nicht mehr auftreten.
26. September 2014 um 10:50 Uhr - -
Bei mir will es ebenfalls nicht funktionieren. UNC oder Rechte sollten kein Problem sein da ich einfach alles mal auf C: abgelegt habe.
Aber ich denke mal das Script benötigt MS Word um die Werte eintragen zu können das sollte man bedenken. In meinem Fall habe ich jedoch nur LibreOffice zur Verfügung. Schade wäre sonst wohl echt die einfachste und günstigste Option gewesen :).
26. September 2014 um 15:04 Uhr - -
Hallo Jens,
korrekt – MS Word wird benötigt; damit füllt das Skript die Textmarken in der Vorlage…
MfG
10. September 2014 um 14:39 Uhr - -
Hallo,
als erstes Super Script habe lange nach sowas gesucht.
Habe ein dotm als Vorlage aber die Makros werden nicht geladen, die leere Vorlage wird als Signatur eingefügt.
Gru? Matze
19. Januar 2015 um 10:12 Uhr - -
Hallo,
sehr schöne Lösung hier. Aber sehe ich das richtig das man jedes AD Attribut wegen der Verwendung von Textmarken in der Signatur nur einmal nutzen kann?? Ich braüchte zum Beispiel den Vornamen mehrfach in der Signatur
20. Januar 2015 um 10:14 Uhr - -
Ja, ist leider zur Zeit noch so… sollte ich mal anpassen 😉
12. Februar 2015 um 09:59 Uhr - -
funktioniert perfekt! Besten Dank!
12. Februar 2015 um 12:39 Uhr - -
Hallo Dennis,
zuerst einmal super Script, funktioniert tadellos und ist genau das, was ich gesucht habe.
Allerdings habe ich noch ein Problem, und zwar wird bei „Nur Text Mails“ ein seltsames Zeichen vor dem Namen gestellt. Bei Outlook 2010 ähnelt das einem tiefgestelltem T, bei Outlook 2003 einem ? im Kasten, manchmal auch nur ein Fragezeichen.
Gibt es hierfür eine Lösung, oder habe ich irgendwo einen falschen Wert in dem Script oder in der AD?
Schonmal vielen Dank für die Hilfe!
Liebe Grüße,
Julian
15. Februar 2015 um 19:47 Uhr - -
Hi,
würde drauf tippen, dass sich da etwas in Deine Vorlage „eingeschlichen“ hat; evtl. reicht es schon aus sie mal neu zu erstellen. Sonst müsste man es sich mal genauer ansehen…
MfG
16. Februar 2015 um 10:34 Uhr - -
Hi und danke für die Antwort.
Habe den Fehler gefunden, bei einem TypeText Chr(11) war ein Tippfehler drin.
Jetzt läuft alles so, wie es sein soll!
LG
9. März 2015 um 14:03 Uhr - -
Wie muss eine Textmarke erstellt werden? Bei mir bleibt die Vorlage leer!
26. März 2015 um 17:40 Uhr - -
Bei mir belibt die Vorlage auch leer.
Zum Einfügen der Textmarke bin ich in Word 2007 so vorgegangen:
Einfügen->Textmarke
Dort eine Textmarke z.B. givenName erstellt.
Dann über Hyperlink->Textmarke die Textmarke ins Dokument geholt.
Wenn ich das Script ausführe, sehe ich, dass unten rechts das Outlook-Symbol auftaucht und wieder verschwindet. Irgendwas läuft also.
Es wird aber auch keine neue Signatur angelegt.
26. März 2015 um 22:08 Uhr - -
Ich habe dem Download wieder eine Beispielvorlage beigelegt – wurde bei der aktuellen Version leider vergessen.
Damit es mit der Beispielvorlage funktioniert, muss ggf. nach dem Download in den Eigenschaften der Datei, Registerkarte Allgemein noch der Zugriff zugelassen werden; sonst ist sie für die Bearbeitung gesperrt.
Falls es auch damit nicht funktioniert, dann könnt ihr im Skript folgendes ändern:
– Zeile 180 auskommentieren, damit Fehler angezeigt werden ->
'Option Explicit
– Zeile 223 das Kommentarzeichen (Apostroph) entfernen, um die Abarbeitung der Vorlage anzuzeigen ->
objWord.Visible = True
– Zeile 241 auskommentieren; so bleibt die Vorlage geöffnet ->
'objDoc.Close
Hoffe das hilft ein wenig weiter…
27. März 2015 um 08:38 Uhr - -
Danke für deine schnelle Antwort.
Zeile 180 auskommentieren -> bringt keine Fehler
Zeile 223 Apostroph weg -> Abarbeitung der Vorlage wird angezeigt (also Word öffnet sich, Felder werden in deiner Beispielvorlage abgefüllt)
Zeile 241 auskommentieren -> Word schliesst sich trotzdem sofort wieder
Trotzdem wird in Outlook keine Signatur angelegt.
Wie ist dein Vorgehen von A-Z zum Einfügen von Textmarken? z.B. für deine Beispielvorlage? Wir bekommen das nicht hin…
27. März 2015 um 15:23 Uhr - -
Klappt leider nicht immer so schnell 😉
Damit Word nicht schließt, muss Zeile 275 auch noch auskommentiert werden; hatte ich gestern übersehen.
Textmarken:
– Neues Dokument öffnen
– Einfügen -> Textmarke
– Textmarkenname = „givenName“ -> Hinzufügen
– Dokument speichern
Führt man das Skript dann mit dieser Vorlage aus, sollte der Vorname eingefügt werden.
Doch sollte die Signatur unabhängig vom Füllen der Textmarken erstellt werden…
30. März 2015 um 09:10 Uhr - -
Das Abfüllen der Textmarken klappt jetzt.
Die Signatur wird aber in keinem Fall erstellt.
Ich habe das (jeweils mit Office 2007) in zwei Umgebungen getestet:
– Auf unseren produktiven Citrix-Terminal-Servern
– Auf meinem Windows 8-Notebook
Die Signatur wird nicht erstellt, auch keine Fehlermeldung.
18. Juni 2015 um 13:45 Uhr - -
Tolles script,
läuft auch super, habe nur 2 probleme:
1. die signatur wird im outlook ( 2010 ) 1,5 zeilig angezeigt, obwohl sie in der worlage 1 zeilig ist
2. gibt es eine möglichkeit, den hyperlink der email als anzeigename umzubenennen sodass z.b. mail in der signatur steht??
Danke
24. Juni 2015 um 00:35 Uhr - -
Hallo Markus,
zu 1. Bist nicht der erste mit dem Problem; konnte es bisher leider nie nachvollziehen. Evtl. hilft Dir Alois‘ Kommentar weiter. Benutzt Du die mitgelieferte Vorlage, oder eine eigene?
Zu 2. Das Skript müsste etwas angepasst werden; schaue es mir mal an und melde mich per E-Mail.
MfG
Nachtrag zu 2.:
In Z. 236 und 252 (jeweils vor
objSignatureEntries.Add strSigName, objSelection
) einfügen:4. Januar 2017 um 11:03 Uhr - -
Hallo,
super Skript!!! geht das auch für Office 2016? Grüße!
4. Januar 2017 um 11:07 Uhr - -
Kurz und knapp: JA
Haben es bei uns mit 2016 im Einsatz – geht einwandfrei.
26. Januar 2017 um 16:50 Uhr - -
Hallo,
vielen Dank für das tolle Skript und die Anleitung!!! Funktioniert perfekt, bei mir auf Exchange 2010 und Outlook 2013
Gruß Manuel
19. Mai 2017 um 12:46 Uhr - -
Hallo Dennis,
Tolles Script,
Ich hab jetzt nur beim der Implementierung folgendes Problem :S.
Ich würde gern die Funktion -rl verwenden. Da nicht alle Mitarbeiter ein Mobil Telefon verwenden. Sehr praktisch.
Jetzt hab ich aber das Problem das einige Mitarbeiter ein Dr. Titel haben..
Nur sollte kein Titel existieren verschindet in der Signatur der vor & Nachname… hat dafür jemand eine Idee ?
Grüße Kevin
19. Juli 2017 um 14:19 Uhr - -
Mit der aktuellen Version vom 19.07.2017 dürfte das Problem nicht mehr auftreten; die Optionalle Textmarken darin leer sind.
-rl
entfernt eine Zeile nur noch, wenn25. Juli 2017 um 11:28 Uhr - -
Hallo,
ich habe folgenden Befehl in der CMD Datein:
cscript.exe \\“Pfad“\CreateOutlookSig.vbs -r \\“Pfad“\Vorlage_kurz.docx -t \\“Pfad“\Vorlage_lang.docx -n -l
Damit wollen wir eigentlich realisieren, dass bei einer neuen Email die Vorlage lang gewählt wird und bei einer Antwort die Vorlage kurz.
Beim erstellen einer neuen Email funktioniert alles problemlos, die Reply Signatur wird ebenfalls angelegt, aber die Textmarkenfelder nicht ausgefüllt.
Hat jemand eine Idee?
Gruß Marco
22. Juli 2019 um 15:36 Uhr - -
Hallo,
funktioniert leider nicht mit Office 365 ( 2019 ). Das Script läuft zwar ohne Fehler durch, aber leider wird keine Signatur in Outlook angelegt.
Grüß Jesko
8. Oktober 2020 um 13:57 Uhr - -
Das hatte ich auch mal – ich denke ich hatte damals die Standard-Formatvorlage in Word angepasst. VG Andras
19. Februar 2020 um 17:07 Uhr - -
Hallo,
gbit es eine Möglichkeitm das Userbild aus dem AD (-properties thumbnailphoto) einzubetten?
Grüße Andreas
8. Oktober 2020 um 10:49 Uhr - -
Hallo
Wir verwenden Office2019 mit „Arial 10“ als Standard Schriftart bei uns.
Die Word-Vorlage wurde auch mit Arial 10 erstellt. Die Signatur wird auch erstellt, aber immer in „Arial 11“!
Warum ist das so? Wie kann ich das verhindern?
Vielen Dank.
Gruss Philipp
17. April 2024 um 08:10 Uhr - -
Wir haben ein ganz ähnliches Problem, bei uns wird aus Schriftart Myriando Pro in 11 immer Schriftgröße 12. Aber nur der Teil der in Schriftgröße 11 ist. Der untere Teil der in 8 ist bleibt in 8. Hat kemand ein ähnliches Problem gehabt? und gibt es Neuigkeiten zu diesem mehr als gutem Skript?
Grüße Red
13. Oktober 2020 um 14:38 Uhr - -
Wo kann ich den Pfad einstellen, wo die Signaturen Gespeichert werden. Da wir Abweichenden PfadAngaben zum Usernamen haben.
Normal: c:\users\username
bei uns: c:\users\beliebig