🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀

❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

suche Hilfe für ein Makro - ERLEDGT

Alles zur Programmierung im LibreOffice.
Antworten
Elbfischer
Beiträge: 126
Registriert: Do 12. Mai 2011, 18:07

suche Hilfe für ein Makro - ERLEDGT

Beitrag von Elbfischer » Mi 13. Feb 2013, 19:19

Hallo zusammen,

ich bin auf der Suche nach jemandem, der mir ein kleines Makro schreibt, das folgendes bewirkt:

1. umschalten auf einen speziellen Drucker (WinFax)
2. Druckauftrag an WinFax absetzen
3. auf den Standardrucker zurücksetzen

Ich hatte schon mal in OpenOffice so ein Makro aufgezeichnet und zum Laufen gebracht:

Code: Alles auswählen

sub WinFax
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Printer"
args1(0).Value = "WinFax"

dispatcher.executeDispatch(document, ".uno:Printer", "", 0, args1())

rem ----------------------------------------------------------------------
dim args2(1) as new com.sun.star.beans.PropertyValue
args2(0).Name = "Copies"
args2(0).Value = 1
args2(1).Name = "Collate"
args2(1).Value = false

dispatcher.executeDispatch(document, ".uno:Print", "", 0, args2())

rem ----------------------------------------------------------------------
wait 5000 'unterbricht für 5 sec 
dim args3(0) as new com.sun.star.beans.PropertyValue
args3(0).Name = "Printer"
args3(0).Value = "StandardDrucker"

dispatcher.executeDispatch(document, ".uno:Printer", "", 0, args3())

end sub
Dieses Makro meldet mir jetzt unter LO 3.6.4 leider nur BASIC-Syntaxfehler. Ein neuerlich unter LO direkt aufgezeichnete Makro sieht praktisch identisch aus (bis auf die wait 5000 Zeile) und läuft ebenfalls in diesen Fehler.

Kann mir hier vielleicht irgend jemand helfen?

Ich würde mich riesig freuen!

Liebe Grüße
Elbfischer
Zuletzt geändert von Elbfischer am Fr 15. Feb 2013, 17:41, insgesamt 1-mal geändert.
Gruß
Peter
═════════════════════════
WIN 11 pro 64 bit • LO 7.1.7 - 64bit

gogo
* LO-Experte *
Beiträge: 1081
Registriert: Sa 5. Feb 2011, 19:07

Re: suche Hilfe für ein Makro

Beitrag von gogo » Do 14. Feb 2013, 01:41

da ich auf den ersten Blick keinen Syntaxfehler erkennen kann:
Wie lautet denn Die Fehlermeldung - und wir dabei auf eine Zeile im Makro verwiesen und: wie startes Du das Makro?
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu

Elbfischer
Beiträge: 126
Registriert: Do 12. Mai 2011, 18:07

Re: suche Hilfe für ein Makro

Beitrag von Elbfischer » Do 14. Feb 2013, 17:45

Hi gogo,

danke für Dein Interesse! Und sorry, dass ich nicht schon ausführlicher geschrieben habe. Ich hatte zuerst einen völlig anderen Ansatz für meine Frage und habe diesen zwar geändert, aber die dann nötigen Infos völlig vergessen.

Also:

1. der Fehler tritt auf, egel wie ich das Makro starte (übers Menü Makro > ausführen, übers Menü Makro > bearbeiten und dann dort ausführen, mittels Klick auf ein mit dem Makro gekoppeltes Icon);

2. die 2 aufeinanderfolgenden Fehlermeldungen erscheinen jedoch über Menü Makro > ausführen nur einmal, bei den anderen Startarten drei- bzw. viermal nacheinander;

3. hier sind 2 Screenshots der Fehlermeldungen 1 und 2, die sich dann ggf. noch wiederholen:
Syntax-Fehler1.jpg
Syntax-Fehler1.jpg (29.79 KiB) 6053 mal betrachtet
Syntax-Fehler2.jpg
Syntax-Fehler2.jpg (23.36 KiB) 6053 mal betrachtet
Zu guter letzt noch eine Gegenfrage:

welche Voraussetzungen müssen denn erfüllt sein, damit das Makro überhaupt ausgeführt werden kann? Ich hatte die Python / UNO-Unterstützung mit installiert, ist das okay?

Wäre toll, wenn Du (oder auch jemand anders) mir auf die Sprünge helfen könnte.

Schönen Abend noch,
Elbfischer
Gruß
Peter
═════════════════════════
WIN 11 pro 64 bit • LO 7.1.7 - 64bit

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: suche Hilfe für ein Makro

Beitrag von F3K Total » Do 14. Feb 2013, 19:58

Hallo,
die Dispatcher-Befehle (aufgezeichnete Makros) sollen in Libre Office problematisch sein.
Versuch mal dieses Makro:

Code: Alles auswählen

sub WinFax
    printerprops = thiscomponent.printer
    printerprops(0).Name = "Name"
    printerprops(0).Value = "WinFax"
    thiscomponent.printer = printerprops
    thiscomponent.print(printerprops)
    wait 5000 'kann man vielleicht auch weglassen, musste mal probieren
    printerprops(0).Name = "Name"
    printerprops(0).Value = "StandardDrucker"
    thiscomponent.printer = printerprops
end sub
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO

Pit Zyclade
* LO-Experte *
Beiträge: 3041
Registriert: Mo 12. Nov 2012, 16:59

Re: suche Hilfe für ein Makro

Beitrag von Pit Zyclade » Do 14. Feb 2013, 23:14

hallo,
Entschuldigt, wenn ich mich einmische:
Unter LO 3.6.5.2 looft das originale Makro, wobei ich mal meine vorhandenen Drucker anstelle von WinFax eingefügt habe.
Sollte dieser "Fehler" nur unter 3.6.4 auftreten?

Gruß
LO 24.8.7.2 (X86_64) / Windows 11 64bit
Problem gelöst? Dann bitte im Betreff der ersten Nachricht [gelöst] voranstellen.

Pit Zyclade
* LO-Experte *
Beiträge: 3041
Registriert: Mo 12. Nov 2012, 16:59

Re: suche Hilfe für ein Makro

Beitrag von Pit Zyclade » Do 14. Feb 2013, 23:20

Und noch was:
Unter Optionen->LibreOffice-Allgemein ist das Häkchen bei "experimentelle (instabile) Funktionen" gesetzt?
LO 24.8.7.2 (X86_64) / Windows 11 64bit
Problem gelöst? Dann bitte im Betreff der ersten Nachricht [gelöst] voranstellen.

gogo
* LO-Experte *
Beiträge: 1081
Registriert: Sa 5. Feb 2011, 19:07

Re: suche Hilfe für ein Makro

Beitrag von gogo » Do 14. Feb 2013, 23:39

der Haken bei den instabilen Funktionen wird's wohl sein, der Dispatcher ist ein bisserl instabil ... aber nicht so viel wie anderes ;)

Ansonsten:
Ein Fehler bei der Variablendeklaration kommt in Deinem ersten Post nicht vor - schmeiss die 2 dim-Zeilen mal raus (aber nicht die unten wo die Argumente deklariert sind (dim args...))
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu

Elbfischer
Beiträge: 126
Registriert: Do 12. Mai 2011, 18:07

Re: suche Hilfe für ein Makro

Beitrag von Elbfischer » Fr 15. Feb 2013, 17:40

Hallo zusammen,

und vielen Dank für Euer Interesse und die Hilfe(versuche).

Also an dem Haken hats wohl nicht gelegen.

Auch das Auskommentieren der dim-Zeilen hat nicht geholfen. Dann kamen die Fehlermeldungen in einer der folgenden Zeilen usw. usw.

MEIN persönlicher Schluss ist: das stimmt wohl was mit der UNO-Unterstützung nicht, vielleicht ist das beim Installieren doch nicht mit reingekommen oder ich habs abgewählt. Aber bei 'ner Änderungsinstallation sagt er mir, dass UNO bereits mit installiert ist. Weiß der Teufel. Ich werd's demnächst mal mit 'ner Neu-Installation versuchen und dabei genau notieren, welche Optionen ich wähle bzw. abwähle.

Was aber wirklich auf Anhieb läuft, ist das Makro von F3K Total; 1000 Dank dafür!

Und zur Info: die wait 5000-Zeile wurde seinerzeit nach Makro-Aufzeichnung mal manuell zugefügt, weil sonst ein Fehler auftrat (welcher weiß ich nicht mehr genau). Auf jeden Fall lief das Makro ohne zu schnell und konnte die "Rückschaltung" auf den Standarddrucker nicht mehr vornehmen.

Nochmals vielen Dank für Eure Hilfe!

Schönes Wochenende noch,
Elbfischer
Gruß
Peter
═════════════════════════
WIN 11 pro 64 bit • LO 7.1.7 - 64bit

gogo
* LO-Experte *
Beiträge: 1081
Registriert: Sa 5. Feb 2011, 19:07

Re: suche Hilfe für ein Makro - ERLEDGT

Beitrag von gogo » Fr 15. Feb 2013, 20:14

stimmt BASIC<=>UNO macht des öfteren Probleme...
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten