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, 6968 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
Neuester Wissensbeitrag
Ähnliche Inhalte
Viren und Trojaner
gelöst Word und Excel per Mail gesperrt - Alternative? (7)

Frage von Coreknabe zum Thema Viren und Trojaner ...

Microsoft Office
gelöst MS Word - Änderung von Tabelleneigenschaften nicht wiederholbar (4)

Frage von keine-ahnung zum Thema Microsoft Office ...

Microsoft Office
gelöst Word 2016 - Geschützte Ansicht unterbinden (7)

Frage von chris123 zum Thema Microsoft Office ...

Microsoft Office
Word 2016 Gliederung beenden (1)

Frage von dudeson zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
DSL, VDSL
gelöst DSL 200m verlängern (15)

Frage von Angela44 zum Thema DSL, VDSL ...

LAN, WAN, Wireless
Per Script auf UniFi-controller zugreifen und WPA2-Key ändern (11)

Frage von Winfried-HH zum Thema LAN, WAN, Wireless ...

Windows Server
SBS 2011 Standard virtualisieren (11)

Frage von HeinrichM zum Thema Windows Server ...

Exchange Server
gelöst DHCP Sever MS Server 2012 Problem (10)

Frage von Florian86 zum Thema Exchange Server ...