🙏 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. 🤗

Auto-Makros

Alles zur Programmierung im LibreOffice.
Antworten
Weissnochnix
Beiträge: 4
Registriert: Di 26. Nov 2019, 18:32

Auto-Makros

Beitrag von Weissnochnix » Di 26. Nov 2019, 18:42

Gibt es in LibreOffice Auto-Makros wie in MS und wenn ja wie heißen sie.

AutoNew
AutoClose

Gefunden habe ich jedenfalls keine.

LG

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

Re: Auto-Makros

Beitrag von gogo » Mi 27. Nov 2019, 00:46

Makros laufen in LO immer automatisch wenn sie gestartet wurden. Man muss sie nie noch extra animieren - ist das denn bei MS-Office so?
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

Weissnochnix
Beiträge: 4
Registriert: Di 26. Nov 2019, 18:32

Re: Auto-Makros

Beitrag von Weissnochnix » Mi 27. Nov 2019, 13:52

AutoNew,
AutoClose,
machen bei MS folgendes.
Rufe ich u.a. eine (Brief)Vorlage auf. Wenn AutoNew in der Vorlage vorhanden ist wird diese Prozedur bei öffen ausgeführt.
Beim Schleißen des Briefes dann AutoClose, wenn vorhanden.
Ich benutze AutoNew (bei MS) um, wenn ich ein Brief schreiben möchte ein Verz. mit Jahr und Monat zu erstellen, sofern es nicht vorhanden ist. ("c:\Private Briefe\2019\12\). Damit sortiert ich meine Briefe und muss nicht suchen.
Statt AutoNew könnte man das auch einem Schalter auf das Makro setzen, nur ich bin faul^^.
Daher würde es mich schon freuen so einen Befehl zu haben. Bin nämlich auf LO umgestiegen und passe gerade meine MS Vorlagen an LO an.
Sub AutoNew
call Meine Proc
end sub
Ich hoffe das war jetzt ausführlich genug, um zu verstehen, warum ich die Befehle haben möchte, wenn sie in LO den vorhanden sind.
LG

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

Re: Auto-Makros

Beitrag von F3K Total » Mi 27. Nov 2019, 17:11

Moin,
es gibt verschiedenste "auslösende Eregnisse"
  • auf Applikations und Dokumentenebene, Menü Extras/Anpassen/Reiter Ereignisse:
    APP.png
    APP.png (48.08 KiB) 4569 mal betrachtet
  • auf Tabellen: Tabellenereignisse
    Tab.png
    Tab.png (42.57 KiB) 4569 mal betrachtet
  • auf Elementebene, Eigenschaften/Reiter Ereignisse
    Element.PNG
    Element.PNG (31.89 KiB) 4569 mal betrachtet
Statt AutoNew kannst du dein Makro an neues Dokument hängen.
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO

Weissnochnix
Beiträge: 4
Registriert: Di 26. Nov 2019, 18:32

Re: Auto-Makros

Beitrag von Weissnochnix » Mi 27. Nov 2019, 17:43

Danke, sowas hatte ich gesucht.
LG

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

Re: Auto-Makros

Beitrag von gogo » Do 28. Nov 2019, 00:16

Dachte ich mir eh ;)

Achte beim Erstellen des Makros darauf, dass es dem Ereignis "Neues Dokument" zugeordnet wird, dann sollte es nur beim Erstellen des Dokumentes aus der Vorlage ausgeführt werden.
Das Makro wird dann aber auch in jedem der Dokumente vorhanden sein, könnte also zu lästigen Nachfragen bei jedem Öffnen führen, und bei E-Mail Scannern Panik auslösen - abgesehen davon sollte man Code nicht überall lose rumliegen haben.
Am besten ist es wenn der Code gar nicht in der Vorlage gespeichert ist, sondern wenn Du ein loses Makro schreibst, das auf Basis einer Vorlage ein neues Dokument erstellt und dieses dann mal abspeichert.
Also: https://www.dannenhoefer.de/faqstarbasi ... ffnen.html
und dann:
https://www.dannenhoefer.de/faqstarbasi ... chern.html

Also:

Code: Alles auswählen

Sub NeueDateiAusVorlage_SpeichernUnterDefiniertemPfad

	DIM DummyFileProp() as new com.sun.star.beans.PropertyValue
	VorlagenURL=converttourl("/Pfad/zur/Vorlage/VorlagenTest.ott")
	SpeicherURL=converttourl("/Pfad/wo/das/neue/Dok/hin/soll/Test_" & format(now,"YYYY-MM-DD") & ".odt")

	oDocument = StarDesktop.loadComponentFromURL(VorlagenURL, "_blank", 0, DummyFileProp() )
	oDocument.storeAsUrl(SpeicherURL, DummyFileProp())

end sub
Man kann in der neuen Datei eine Makro-Zuordnung zu einem Ereignis per Makro aufheben. Und man kann die Bibliothek auch zur Laufzeit verändern (d.h. den Makrocode aus dem Dokument löschen) - letzteres ist aber wirklich als experimentell anzusehen - einfacher ist die Lösung oben. Das Makro dann an ein Icon in der Iconliste binden und fertig...

edit: Code verschönert
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

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

Re: Auto-Makros

Beitrag von F3K Total » Do 28. Nov 2019, 17:27

gogo hat geschrieben:
Do 28. Nov 2019, 00:16
Das Makro wird dann aber auch in jedem der Dokumente vorhanden sein, könnte also zu lästigen Nachfragen bei jedem Öffnen führen
Sorry, da muss ich widersprechen. Wenn ein Makro, das unter "Meine Makros" liegt, auf Applikationeebene (Leerer OpenOffice Bilschirm)
EAE.png
EAE.png (6.33 KiB) 4509 mal betrachtet
über Menü Extras/Anpassen/Reiter Ereignisse an das Ereignis "Neues Dokument" gehängt wird, wird es auch nur beim Erzeugen eines neuen Dokumentes ausgeführt, hat nichts mit dem neuen Dokument zu tun.
Allerdings wird es dann bei jedem neuen Dokument, ob Calc, Writer, Base ... ausgeführt
Will man es auf einen bestimmten Dokumententyp eingrenzen, kann man dies z.B. innerhalb des Makros, durch Abfrage des Dokumententyps erledigen, Beispiel:

Code: Alles auswählen

SUB NEUES_CALC_DOCUMENT(EVENT)
    IF EVENT.SOURCE.supportsservice("com.sun.star.sheet.SpreadsheetDocument") then
        msgbox "ich bin ein neues Calc-Dokument"
    ENDIF
END SUB
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO

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

Re: Auto-Makros

Beitrag von gogo » Fr 29. Nov 2019, 00:14

Ich hab' dem "Startbildschirm" noch nie ein Makro zugeordnet. Wusste gar nicht, dass so etwas vorgesehen ist :lol:
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

Weissnochnix
Beiträge: 4
Registriert: Di 26. Nov 2019, 18:32

Re: Auto-Makros

Beitrag von Weissnochnix » Fr 29. Nov 2019, 05:10

@ gogo Und schon wieder hat es was gelernt. :lol:


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