Wie mit Schaltfläche Makro einer anderen Datei starten?

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Wie mit Schaltfläche Makro einer anderen Datei starten?

Re: Wie mit Schaltfläche Makro einer anderen Datei starten?

von komma4 » Mo, 25.01.2010 13:50

Ja, so siehst aus.

Erstelle eine Bibliothek "foo" und packe Deine Makros da rein.
Exportiere die Bibliothek als Extension (Basic-Makros verwalten>Bibliotheken>Export...)

Nun sorgst Du vor einer Makroausführung noch, dass diese Bibliothek geladen ist

Code: Alles auswählen

If NOT Globalscope.BasicLibraries.isLibraryLoaded( "foo" ) Then
   Globalscope.BasicLibraries.loadLibrary( "foo" )
End If
...und schon kann jedes Makro darin aufgerufen werden (durch seinen Namen)

Re: Wie mit Schaltfläche Makro einer anderen Datei starten?

von steffn » Mo, 25.01.2010 13:36

Stephan hat geschrieben:
Ich weiß nicht, was allgemeingültige Makros sind und unterscheide Makros wahrscheinlich damit verbunden auch nicht.
Damit meint Winfried die Summe von Benutzer- und OOo-Makros.
Benutzermakros sind diejenigen Makros die im Benutzermakroverzeichnis gespeichert sind und im Dialog Extras-Makros-Makros verwalten-OPenOffice.org Basic im erscheinenden Dialog im Feld "Makros aus" unter "Meine Makros" stehen, OOo-Makros hingegen sind im 'zentralen' Makroverzeichnis gespeichert und im schon genannten Dialog unter "OpenOffice.org makros" aufgelistet.

Okay danke ... aber was bedeutet das für mich?
Soll ich die Makros einfach am anderen Ort speichern, dann wird mein Problem kein Problem mehr?
Stephan hat geschrieben:
Ich habe alle dokumentspezifischen und dukumentübergreifenden Makros in einer Hauptdatei, die auch die anderen Dateien startet.

Falls der Sinn des ganzen ist eine leichte Weitergabe der Makros in Anlehnung an das bei MS Office Übliche zu erreichen beschreitest du einen sehr ungünstigen Weg, weil das bei OOo so nicht vorgesehen ist.
Makros die dokumentübergreifend arbeiten werden bei OOo (heutzutage) bevorzugt in Form sog. Extensions weitergegeben.
Ich kenne das "MS Office Übliche" nicht und ich habe auch noch nie eine Extension erstellt.
Was ist mit "Weitergabe"/"weitergegeben" gemeint?
Wenn ich die Makros in einer Extension speichere, verschwindet dann mein Problem?

Spontan fällt mir nur ein "thiscomponent" ein, dass die Makros zur Zeit an die Hauptdatei bindet. Ansonsten ist eigentlich alles so neutral, dass es egal ist, wo der Code sich befindet.

Re: Wie mit Schaltfläche Makro einer anderen Datei starten?

von Stephan » Sa, 23.01.2010 11:36

Ich weiß nicht, was allgemeingültige Makros sind und unterscheide Makros wahrscheinlich damit verbunden auch nicht.
Damit meint Winfried die Summe von Benutzer- und OOo-Makros.
Benutzermakros sind diejenigen Makros die im Benutzermakroverzeichnis gespeichert sind und im Dialog Extras-Makros-Makros verwalten-OPenOffice.org Basic im erscheinenden Dialog im Feld "Makros aus" unter "Meine Makros" stehen, OOo-Makros hingegen sind im 'zentralen' Makroverzeichnis gespeichert und im schon genannten Dialog unter "OpenOffice.org makros" aufgelistet.
Ich habe alle dokumentspezifischen und dukumentübergreifenden Makros in einer Hauptdatei, die auch die anderen Dateien startet.


Falls der Sinn des ganzen ist eine leichte Weitergabe der Makros in Anlehnung an das bei MS Office Übliche zu eerreichen beschreitest du einen sehr ungünstigen Weg, weil das bei OOo so nicht vorgesehen ist.
Makros die dokumentübergreifend arbeiten werden bei OOo (heutzutage) bevorzugt in Form sog. Extensions weitergegeben.

ZU der eigentlichen fRage weiß ich auch keine Lösung. Ich nehme aber an das es eine gibt, weil ich glaube mich zu erinnern sowas schon eimal gesehen zu haben.
Entweder dürfte es sich dabei um eine LÖsung handeln die sich an das Starten von zentralen Makros per Kommandozeile anlehnt, siehe:
viewtopic.php?f=2&t=31173&hilit=Kommandozeile#p124587

allerdings führen im internationalen Forum genannte Ausdrücke:

Code: Alles auswählen

soffice "C:\Dokumente und Einstellungen\Administrator\Desktop\mtest.ods macro://Standard.Module1.makrotest()"
(oder: ... macro:///...)

bei mir nicht zum Erfolg.
WEnn sich eine funktionierende Formulierung finden ließe wäre die Ausführung prinzipiell über eine temporäre Batsch-Datei oder über den Shell-Befehl möglich.

Oder die LÖsung, die ich glaube schon mal gesehen zu haben, ging über ein -accept (siehe obiger Link im Screenshot)



Gruß
Stephan

Re: Wie mit Schaltfläche Makro einer anderen Datei starten?

von steffn » Sa, 23.01.2010 10:40

Schaltfläche im Formular.

Geöffnete andere Datei.

Ich weiß nicht, was allgemeingültige Makros sind und unterscheide Makros wahrscheinlich damit verbunden auch nicht. Ich habe alle dokumentspezifischen und dukumentübergreifenden Makros in einer Hauptdatei, die auch die anderen Dateien startet. Und aus einer der anderen Dateien möchte ich nun sehr gerne ein Makro der Hauptdatei starten.

OOO310m19 (Build:9420)

Re: Wie mit Schaltfläche Makro einer anderen Datei starten?

von komma4 » Sa, 23.01.2010 06:52

Schaltfläche: wo (Symbolleiste, Dialog, Formular)?

Makro der "anderen Datei": diese Datei geöffnet?

Prinzipiell: warum?
Allgemeingültige Makros sollten nicht in "fremden" Dateien versteckt werden... dort sollten sich nur dokumentenspezifische Makros "verstecken"


Welche OOo Version?

Wie mit Schaltfläche Makro einer anderen Datei starten?

von steffn » Fr, 22.01.2010 19:24

Die Suche hier und über Google haben mir nicht geholfen:
Wie kann man duch Auslösen einer Schaltfläche ein Makro einer anderen Datei starten?

Nach oben