Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Word 2003 und Dokumentenvariablen

Frage Microsoft Microsoft Office

Mitglied: 26831

26831 (Level 1)

07.12.2006 um 10:20 Uhr, 6987 Aufrufe

WENN-DANN-SONST per VBA, da Dokumentenvariablen nicht mehr verfügbar sind, wenn Sie in der WENN-DANN-SONST-Funktion von Serienbriefen enthalten sind.

Hallo zusammen,

(Die eigentliche Frage steht ganz unten)

Infos:
wir nutzen ACT 8 (Kontaktesoftware) und können aus ACT heraus z.B. einen Serienbrief erstellen. Das Wordformular öffnet sich auch und die angelegten Dokumentenvariablen klappen, aber ein Blick in Ansicht->Symbolleisten->Seriendruck bringt Verwunderung.
Dort sind alle Buttons bzgl. Seriendruck deaktiviert, außer "Datenbank anlegen"?!?!
OK...in der Menüleiste oben rechts habe ich einen weiteren Punkt "ACT" und dort gibt es auch den Punkt "Feldliste anzeigen". Es wird mir nun die Leiste angezeigt, wie man sie von der Seriendruckleiste (normalerweise) her kennt.

Ich wähle die Anrede aus und staune: Dort steht nun {DocVariable[ACTFIELD]TBL_CONTACT.SALUTATION}?!?!
Eigentlich bin ich mehr diese Form gewohnt: {MERGEFIELD "Anrede"}

Nun kommt die berühmte Wenn-Dann-Situation ala: {Wenn Anrede = Herr DANN "r Herr" " Frau"}
Das klappt aber nur mit diesen MERGEFIELDS, nicht aber mit diesen DocVariable-Feldern. Fehlermeldung: Objekt wurde gelöscht.

Meine nächste Idee war die Erstellung eines VBA-Scripts bei Document_New():

Code:
strAnrede = ActiveDocument.Variables("[ACTFIELD]TBL_CONTACT.SALUTATION")
if strAnrede = "Herr" than
strAnrede = "r Herr" + ActiveDocument.Variables("[ACTFIELD]TBL_CONTACT.FULLNAME")
und so weiterDie Meldung war dann zwar weg, aber mir wurde grundsätzlich der Eintrag von ELSE (Sehr geehrte Damen und Herren) zurückgeliefert.

Im Direktfenster vom VBA-Editor liefert mir ? ActiveDocument.Variables("[ACTFIELD]TBL_CONTACT.SALUTATION") ein zurück.

Klar...wenn da nicht Herr oder Frau drin steht sondern , dass das Script mit ELSE aussteigt.

Ich habe mein Script aus der ACT-Vorlage ausgeschnitten und in das von ACT neu erstellte Dokument wieder eingefügt und das Dokument gespeicht. Wenn ich dieses Dokument jetzt wieder öffne, dann klappt es!!!

In Word habe ich noch den Script-Editor gefunden und festgestellt, dass die Dokumentenvariablen dort zu finden sind. Man staune: In der Formatvorlage steht bei [ACTFIELD]TBL_CONTACT.SALUTATION tatsächlich .

Ich habe nun einen STOP in mein Script eingebaut und festgestellt, dass zu dem Zeitpunkt, wo mein Script ausgeführt wird, die Dokumentenvariablen von dem ACT-Prog noch NICHT von auf z.B. "Herr" geändert wurden. Also habe ich mir einen Button auf das Dokument gepflanzt mit dem ich mein Script dann nachträglich starten kann und siehe da es funktioniert.

Nun die Frage an Euch:
Wie schaffe ich es mein VBA-Script NACH der Änderung dieser DocumentenVariablen zu starten? Oder wie kann ich ein VBA-Script starten, wenn das Dokument fertig geladen ist?

Stefan
Ähnliche Inhalte
Windows Server
Windows 2003 Domäne durch 2016er ersetzen (3)

Frage von Cenion zum Thema Windows Server ...

Sicherheitsgrundlagen
Sicherheitsrichtlinien und Standartänderung zwischen 2003 und 2008 (2)

Frage von LordNicon79 zum Thema Sicherheitsgrundlagen ...

Microsoft Office
Formel-Funktion in Word produziert unsaubere Resultate bei Indizes (1)

Frage von Yauhun zum Thema Microsoft Office ...

Neue Wissensbeiträge
RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

(13)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...

Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Komplett neues Netzwerk, Ubiquiti WLAN, Router, Switch (16)

Frage von Freak-On-Silicon zum Thema LAN, WAN, Wireless ...

CMS
Lokales Wordpress im LAN - wie aufsetzen? (16)

Frage von Static zum Thema CMS ...

Windows Userverwaltung
gelöst Wie verfahrt Ihr mit den Windows-Benutzerkonten und -dateien von ausgeschiedenen Mitarbeitern? (14)

Frage von Bl0ckS1z3 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
IP im privaten Netz nicht erreichbar (14)

Frage von guntis zum Thema LAN, WAN, Wireless ...