Makro startet nicht automatisch beim Dokumentenaufruf

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

Ein__Stadtmensch
***
Beiträge: 61
Registriert: Do, 18.12.2003 10:08

Makro startet nicht automatisch beim Dokumentenaufruf

Beitrag von Ein__Stadtmensch »

Hallo,

ich habe ein Makro "main" erstellt, welches mit einem Dokument in Standard - Autoexec gespeichert ist.

Nun will ich das das Makro automatisch aufgerufen wird wenn das Dokument geöffnet wird.

Ich habe unter Makros - Makro - Zuweisen - Ereignisse das Makro bei Dokument starten zugewiesen. Allerdings kommt beim Öffnen nur eine Sicherheitsabfrage aber nichts passiert.

Zudem wird das Makro auch nicht gestartet, wenn ich es einem Symbol in der Symbolleite zuweise.

Nur wenn man über Makros - Makro - Main - ausführen gehe funktioniert es.

Was mache ich denn da falsch?
Toxitom
********
Beiträge: 3768
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hallo Stadtmensch,

nichts, das geht einfach nicht. Schau doch mal den Thread direkt vor deinem. Dort hatte ich heute morgen eine Erläuterung genau dieses Phänomens geschildert.

viewtopic.php?t=567

Gruss Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
empy
Beiträge: 7
Registriert: Di, 23.03.2004 10:51
Wohnort: Regensburg
Kontaktdaten:

Beitrag von empy »

Dass es grundsätzlich nicht geht ist nicht so ganz korrekt.
Du hast wohl recht, wenn Du sagst, dass die Zuweisung
eines Makros zum "Dokument öffnen" - Event in der
bestehenden OOo-Version aufgrund eines Bugs nicht
funktioniert.
Allerdings kann man diesen Bug umgehen.
  • * Man öffnet sein Dokument und speichert es ohne Dateiendung ab.
    • --> Am Besten man nimmt wirklich gar keine Endung.
      -->(Häkchen raus bei Automatische Wahl der Dateiendung)
    * Jetzt weist man das Makro z.B. dem "Dokument öffnen" - Event zu.
    * Am Ende dann das Dokument mit oder ohne Dateiendung speichern.
Jetzt sollte das Makro ausgeführt werden beim Öffnen des Dokumentes.

Grüße

MP

Code: Alles auswählen

Sub Initial (cFname)
   cInitial = GetInitial(cFname)
   oDoc = ThisComponent
   oSig = oDoc.createInstance("com.sun.star.Signatur")
   oSig.insertTxt("" & cInitial & " = " & cFname & "")
End Sub
d. h. MP = Markus Plessing
Toxitom
********
Beiträge: 3768
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hallo Markus,

klasse Tipp, danke. Man lernt halt nie aus... :D

Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Antworten