Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: SuperTom am 26.06.13 - 15:37:53

Titel: Worddokument via Script als PDF speichern
Beitrag von: SuperTom am 26.06.13 - 15:37:53
Hallo alle,

ich habe eine Funktion, die soweit gut funktioniert, in der aus Notes heraus ein Wordkokument erstellt, gepeichert und angehägt wird.

Jetzt würde ich gerne das Speichern erweitern zum Speichern als PDF. Diese Möglichkeit ist ja ab Word 2007 gegeben.

Das Speichern geht gut:

WordObject.ActiveDocument.SaveAs("C:\" + WordDateiName)

Jetzt dachte ich, daß ich laut Makro die Zeile einfach austauschen könnte, geht aber nicht:

WordObject.ActiveDocument.ExportAsFixedFormat("C:\" + WordDateiName)

Auf der Suche habe ich hier im Forum einige schlaue und hilfsbereite Leute gesehen.

Am liebsten wäre mir ein Code-Schnipsel (mit möglichen Parametern)

Schon mal vielen Dank im voraus

SuperTom
Titel: Re: Worddokument via Script als PDF speichern
Beitrag von: ascabg am 26.06.13 - 15:46:50
Hallo,

Das hat soweit nichts mit Notes zu tun.

Schon mal in Word ein Makro aufgezeichnet und die Datei als PDF gespeichert?
Im VBA-Editor kannst Du Dir dann ansehen, wie die genaue Schreibweise aussieht.

Diese musst Du dann nur noch in Deinen LS-Code uebertragen.

Und um sicherzugehen, wuerde ich das Objekt auf WORD (im LS-Code) auch als Objekt fuer
WORD 2007 oder hoeher erstellt.


Andreas
Titel: Re: Worddokument via Script als PDF speichern
Beitrag von: Axel am 26.06.13 - 16:07:44
Ganz rudimentär sieht das Ganze aus:

Code
	Set objWord = Nothing
	
	On Error Resume Next
	Set objWord = GetObject("", "Word.Application")
	If Err = 208 Then  '  Fehler 208 tritt auf wenn Word noch nicht läuft
		Err = 0
		Set objWord = CreateObject("Word.Application")
		objWord.Visible = True  'Word sichtbar machen
	End If  'If Err = 208 Then
	
	Call objWord.Documents.Add
	
	Call objWord.Selection.TypeText( "Das ist ein test" )


	'Aktives Dokument als PDF speichern und als PDF öffnen.
	Call objWord.ActiveDocument.ExportAsFixedFormat("D:\Daten\Test1.pdf", 17, True)


Axel
Titel: Re: Worddokument via Script als PDF speichern
Beitrag von: SuperTom am 26.06.13 - 16:18:36
Hallo Andreas,

meiner Meinung nach ist das ein sehr wichtiges Thema für Notes.
Wenn ich diese Export- bzw. Umwandlungsfunktion nicht hätte, würden viele User nicht mit Notes arbeiten.

Wie ich gesehen habe, ist dies hier vor wenigen Jahren (2009) Thema gewesen für Excel. Dort wurde das "Speichern als PDF" gelöst.

Dein Tipp ist gut, nur leider bin ich nicht so ein Crack, der sofort sieht, wie Script und VBA fehlerfrei zu "verbinden" sind.

Ich staune, daß dies hier kein großes Thema ist. Meine User würden im vor Freude im Dreieck hüpfen, wenn Sie automatisiert ein PDF als Anhang verschicken könnten. Bislang ist es ein Worddokument.  

SuperTom
Titel: Re: Worddokument via Script als PDF speichern
Beitrag von: ascabg am 26.06.13 - 16:22:23
@SuperTom,

Ich glaube Du hast mich falsch verstanden.
Die Programmierung erfolgt in LS, jedoch wie Du es erreichst, dass Dein WORD-Dokument in WORD als PDF gespeichert wird,
ist in der VBA-Programmierung von WORD enthalten.


Andreas
Titel: Re: Worddokument via Script als PDF speichern
Beitrag von: SuperTom am 26.06.13 - 16:42:24
Hallo Axel, hallo Andreas,

ich habe die Zeile:

Call objWord.ActiveDocument.ExportAsFixedFormat("C:\Test1.pdf", 17, True)

bei mir eingebunden und es ist genial gut. Es wurde als PDF gespeichert.
Ich war doch gar nciht so weit entfernt. Wie kommt man auf die "17" usw.

Jetzt versuche ich noch das PDF anzuhängen. Ich hoffe, dass ich da nicht auch irgendwelche Parameter brauche, die ich nicht kenne.

Ihr wißt gar nicht, wie genial Ihr seid.

SuperTom 
Titel: Re: Worddokument via Script als PDF speichern
Beitrag von: ascabg am 26.06.13 - 16:44:44
Hallo,

Zitat
Wie kommt man auf die "17" usw.
Frag doch mal bei Microsoft nach, warum denn die 17 verwendet wurde und nicht 4711.  ;D

btw.
Dein Script wird wahrscheinlich dann Probleme bekommen, wenn auf dem Rechner, auf dem es ausgefuehrt wird
eine WORD-Version <2007 installiert ist.


Andreas
Titel: Re: Worddokument via Script als PDF speichern
Beitrag von: Axel am 26.06.13 - 16:59:34
Wie kommt man auf die "17" usw.

Ganz einfach.  ;)

Man zeichnet sich die Funktion mit "Makro aufzeichnen" in Word auf und schaut sich dann den Code an. Über die Onlinehilfe von Word findet man dann den wert 17 für die Konstante wdExportFormatPDF. Anschließend wird das Ganze noch nach LotusScript umgesetzt.

Dafür sind natürlich Programmierkenntnisse notwendig.

Axel
Titel: Re: Worddokument via Script als PDF speichern
Beitrag von: Peter Klett am 26.06.13 - 21:31:19
... und wenn man das in der Online-Hilfe nicht findet (z.B. weil man, wie ich, nicht auf die Idee kommt, dort nachzuschauen), kann man sich mit einem Macro wie diesem helfen:

msgbox wdExportFormatPDF

Das Macro in Word ausgeführt gibt dann die 17 aus (oder jeden anderen Wert der eingetragenen Konstanten).
Titel: Re: Worddokument via Script als PDF speichern
Beitrag von: Werner Götz am 28.06.13 - 08:02:04
... oder man schaut sich den Wert im VBA-Direktfenster an via
? wdExportFormatPDF
Titel: Re: Worddokument via Script als PDF speichern
Beitrag von: weal am 28.06.13 - 14:52:15
Hier ein paar Links zum Thema:

Object model reference (Word 2013 developer reference)
http://msdn.microsoft.com/en-us/library/office/ff837519.aspx (http://msdn.microsoft.com/en-us/library/office/ff837519.aspx)

Document.ExportAsFixedFormat:
http://msdn.microsoft.com/en-us/library/office/ff840962.aspx (http://msdn.microsoft.com/en-us/library/office/ff840962.aspx)

Referenz zu anderen Office Produketen/Versionen
http://msdn.microsoft.com/en-us/library/office/bb726434(v=office.12).aspx (http://msdn.microsoft.com/en-us/library/office/bb726434(v=office.12).aspx)


Gruß
Alex