Hallo zusammen.
Ich habe einen Agenten, der mit Word einen Serienbrief erstellt. Die Variablen stehen dabei in einer Textdatei. Unter Office 2003 ist das alles kein Problem. Seit Office 2010 gibt es aber Probleme mit den Umlauten. Diese werden im Serienbrief nicht richtig dargestellt.
Per Google habe ich herausgefunden, dass dieses Problem wohl bekannt ist und mittels eines Registry-Keys (
https://www.etes.de/blog/unerwunschte-sonderzeichen-im-word-seriendruck/) behoben werden könnte.
Ich suche aber nach einer Lösung ohne Registry. Dabei bin ich auf einen Parameter von MailMerge.OpenDataSource namens "Format" gestossen. Beschrieben ist das unter:
-
https://msdn.microsoft.com/en-us/library/ff841005(v=office.14).aspx-
https://msdn.microsoft.com/en-us/library/bb237872(v=office.12).aspx-
https://msdn.microsoft.com/de-de/library/microsoft.office.interop.word.mailmerge.opendatasource(v=office.11).aspxLeider bekomme ich das aber in meinem Script nicht hin.
Folgenden Code verwende ich in Lotus-Script:
Dim Word As Variant
Set word = CreateObject("Word.Application")
word.Visible = False
Call word.Documents.Open(strTemp & "\" & strWD)
Sleep 10
With word.ActiveDocument.MailMerge
.OpenDataSource CStr(strFN)
.Destination = 0
.MailAsAttachment = False
.MailAddressFieldName = ""
.MailSubject = ""
.SuppressBlankLines = False
.DataSource.FirstRecord = 1
.DataSource.LastRecord = -16
.Execute True
End With 'With objWord.ActiveDocument.MailMerge
word.Documents(strWD).Close
word.Visible = True
Ich habe es mit
.OpenDataSource CStr(strFN), |Format:=wdOpenFormatUnicodeText|
versucht. Ohne Erfolg.
Hat jemand Erfahrung mit der Steuerung von Word via Lotus Script bzw. dieses Problem auch gehabt und eine Lösung dafür?