Autor Thema: EXCEL via Script als PDF speichern - wie?  (Gelesen 11452 mal)

Offline bezi27

  • Frischling
  • *
  • Beiträge: 22
EXCEL via Script als PDF speichern - wie?
« am: 28.11.09 - 14:56:13 »
Hallo an alle,

ich hab da wieder mal ein Problem mit der Steuerung von EXCEL mittels Script und hoffe auf eure Hilfe.

Mittels Script wird eine EXCEL-Tabelle erstellt und befüllt - klappt problemlos.
Es lässt sich auch als XLS speichern.

Aber: im Office 2007 ist es ja möglich, im EXCEL gleich eine PDF-Datei zu speichern.

Ich schaffe es aber nicht, dies mit Script zu bewerkstelligen.

Mein letzter Versuch war:
pdfname = ParaDoc.DokDir(0) & nam & "\" & datname & ".PDF"
excel.activesheet.ExportAsFixedFormat "xlTypePDF", pdfname, "xlQualityStandard", True, False

... und dann gibt's immer einen OLE-Error.

Weiß jemand Rat für mich?

Herzlichen Dank im Voraus!

Bettina



Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: EXCEL via Script als PDF speichern - wie?
« Antwort #1 am: 28.11.09 - 23:20:31 »
Hast Du Deine problematischen Zeilen schon in einem Excel-Macro nachvollzogen? Wenn es auf Excel-Seite kracht, meldet Excel als OLE-Server ja nichts aussagekräftiges mehr in Richtung Notes.

Bernhard

Offline bezi27

  • Frischling
  • *
  • Beiträge: 22
Re: EXCEL via Script als PDF speichern - wie?
« Antwort #2 am: 29.11.09 - 19:34:10 »
Hallo Bernhard,

vielen Dank für den Tipp - aber ich fürchte, genau hier liegt mein Problem.

Ich habe nämlich den umgekehrten Weg gewählt, d.h. im EXCEL ein Makro aufgezeichnet, das die Datei als PDF speichert und dann die Parameter (natürlich ohne die Bezeichner) abgeschrieben.

Und das auch auf mehrere Varianten, d.h. für den Wert "xlQualityStandard" mal diesen Text, mal "0", mal 0 - es haut nicht hin.
Allerdings weiß ich ja nicht, welche/r Parameter nicht funktionier/en, weil - wie du angemerkt hast - immer nur der "OLE automatation error" erscheint.

Lt. der EXCEL-Hilfe wären ja die Parameter Type und Filename ausreichend - das funktioniert ja auch, aber leider nur direkt im EXCEL ...

leicht verzweifelte Grüße

Bettina



Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: EXCEL via Script als PDF speichern - wie?
« Antwort #3 am: 29.11.09 - 22:28:37 »
Hallo Bettina,

ich habe so meine Zweifel, ob wirklich alles, was Excel selber bietet, auch im Part des OLE-Servers geboten wird. Letztes Erlebnis (hier allerdings Excel 2000 und Excel 2003): Der Export eines Datums (wirklich ein Notes Date/Time-Item!) "01.01.209" in eine Excel-Zelle. Es kommt die bekannte Meldung. In Excel kann man dieses nun nicht unwahrscheinliche Datum natürlich aber ohne weiteres verarbeiten.

Dies bedeutet aber nicht, dass es für Dein Vorhaben keine Lösung gibt. Mich würde das dann auch interessieren. Gewisse Zweifel habe ich aber seit einiger Zeit, ob man tatsächlich alles 1:1 umsetzen kann.

Bernhard

PS: Ggf. musst Du ein Excel-Makro starten, damit für den PDF-Export Notes letztlich aussen vor ist. Nur so als eine Überlegung ...

Glombi

  • Gast
Re: EXCEL via Script als PDF speichern - wie?
« Antwort #4 am: 30.11.09 - 16:52:06 »
Notes kennt die MS Konstanten xlTypePDF und xlQualityStandard nicht.

Also anstelle von
excel.activesheet.ExportAsFixedFormat "xlTypePDF", pdfname, "xlQualityStandard", True, False

ein
excel.activesheet.ExportAsFixedFormat 0, pdfname, 0, True, False

Die Werte für die Konstanten findest Du in der Datenbank "Microsoft Office 2000/2002/2003/2007 Constants", siehe
http://atnotes.de/index.php/topic,34333.0.html

Andreas

Offline bezi27

  • Frischling
  • *
  • Beiträge: 22
Re: EXCEL via Script als PDF speichern - wie?
« Antwort #5 am: 30.11.09 - 20:23:23 »
Hallo Andreas,

vielen Dank für den Tipp - das habe ich leider schon alles probiert.
Und auch die von dir vorgeschlagene Formel ergibt wieder den "OLE automatation error".

Lieber Bernhard,
das mit dem Makro habe ich mir jetzt auch schon überlegt.
Den Export immer auf einen fixen Dateinamen, dann via Notes umbenennen und dort hin kopieren, wo ich es wirklich brauche.
Hoffe, das haut dann hin.

Vielen Dank für eure Mühe!

Grüße

Bettina




Offline Axel

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: EXCEL via Script als PDF speichern - wie?
« Antwort #6 am: 01.12.09 - 08:52:18 »
Übergib doch dem Makro den entsprechenden Dateinamen als Parameter. Dann sparst du dir das spätere Umbenennen.

Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline Kadlec

  • Senior Mitglied
  • ****
  • Beiträge: 489
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: EXCEL via Script als PDF speichern - wie?
« Antwort #7 am: 01.12.09 - 08:54:45 »
Dein Problem muss irgendwo anders liegen.
Ich habe mal in die ExcelExportLib (findest Du auch hier irgendwo) die Zeile
vExcelSheet.ExportAsFixedFormat 0, "c:\data\test.pdf",0, True, False
eingefügt.
Klappt wunderbar.

Boris

Offline Demian

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 569
  • Geschlecht: Männlich
Re: EXCEL via Script als PDF speichern - wie?
« Antwort #8 am: 01.12.09 - 10:34:00 »
eventuell enthalten ParaDoc.DokDir(0), nam  oder datname irgendwo Leerzeichen, die zu dem Problem führen?
Gruß
Demian

Offline bezi27

  • Frischling
  • *
  • Beiträge: 22
Re: EXCEL via Script als PDF speichern - wie?
« Antwort #9 am: 01.12.09 - 21:29:49 »
Hallo Kadlec,

sensationelle Idee - da klappt's!
Also mache ich mich jetzt auf die Suche, wo in meinem Scipt eine Definition fehlt bzw. nicht so richtig ist...

Vielen Dank jedenfalls!


@Axel: werde mal suchen, wie ich das mache!

@Demian: nein, Leerzeichen & Co sind hier nicht enthalten (bin ein alter DOS-User...)

Vielen Dank an euch alle für die Unterstützung!

Bettina

Offline Axel

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: EXCEL via Script als PDF speichern - wie?
« Antwort #10 am: 02.12.09 - 08:59:31 »
Ganz grob beschrieben (an einem Beispiel für Word) geht das so:

Aufruf in Notes:
Code
...
Set objWord = CreateObject("Word.Application")

Call objWord.Run("NameDesMakros", "Parameter")


Aufruf in Word:
Code
Public Sub NameDesMakros(strValue As String)
    
  MsgBox strValue

End Sub

In Excel sollte das auf ähnliche Weise funktionieren.

Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline bezi27

  • Frischling
  • *
  • Beiträge: 22
Re: EXCEL via Script als PDF speichern - wie?
« Antwort #11 am: 02.12.09 - 22:13:50 »
Hurra - es funktioniert!!! ;D ;D ;D

Nochmals herzlichen Dank an alle für die Unterstützung!


Grüße

Bettina

Offline Axel

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: EXCEL via Script als PDF speichern - wie?
« Antwort #12 am: 03.12.09 - 08:47:27 »
... und wie hast du es jetzt gelöst?

Die Lösung kann auch für Andere interessant sein, die vor dem gleichen Problem stehen.

Axel
 
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline bezi27

  • Frischling
  • *
  • Beiträge: 22
Re: EXCEL via Script als PDF speichern - wie?
« Antwort #13 am: 03.12.09 - 22:45:23 »
Hallo an alle,

ich hab's so gelöst, wie Kadlec  vorgeschlagen hat und mir dazu auch die erwähnte lib (Excel export script 2.40) gesucht.

Und dann nach vielem Suchen und Vergleichen endlich den Fehler gefunden: Der Datname war falsch!
Also gar kein Problem mit dem Excel-Export an sich ...  :-: (ist mir etwas peinlich, aber die Fehlermeldung...)

Danke euch allen nochmals sehr herzlich für die Hilfe!

Grüße

Bettina

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz