🙏 Bitte helfen Sie uns das LibreOffice Forum zu erhalten. 🙏
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.

🍀 Wir hoffen auf Ihre Unterstützung - vielen Dank!🍀

❤️ 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. 🤗

Letzten DS anwählen bei Formular öffnen

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
Antworten
Helles58
Beiträge: 115
Registriert: Mo 17. Jul 2017, 19:51

Letzten DS anwählen bei Formular öffnen

Beitrag von Helles58 » Fr 16. Mai 2025, 17:02

Hallo zusammen,

hab ein Makro aus dem Handbuch das ich anpassen möchte und habe aber keine Info gefunden ab das so geht.
Wenn das Formular geöffnet wird soll dann der Corsur auf dem letzten DS stehen,
Geht das mit dem Makro überhaupt?

Sub Formular_oeffnen_schliessen(oEvent AS OBJECT)
DIM stZiel AS String
aFormStart() = Split(thisComponent.Title, thisComponent.UntitledPrefix)
stZiel = oEvent.Source.Model.Tag
ThisDatabaseDocument.FormDocuments.getByName( Trim(stZiel) ).open
ThisDatabaseDocument.FormDocuments.getByName( Trim(aFormStart(1)) ).close
End Sub

Hat jemand einen Tip?
Bin dankbar für jede Hilfe

Gruß Helles58

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

Re: Letzten DS anwählen bei Formular öffnen

Beitrag von F3K Total » Fr 16. Mai 2025, 17:26

Moin,
du weißt schon, dass dieses Makro von einer Schaltfläche gestartet werden muss, die sich in einem ersten Formular befindet? In der Zusatzinformation der Schaltfläche muss der Name des zu öffnenden zweiten Formulares eingetragen sein.
Das Makro öffnet dann das zweite Formular und schließt das Erste.
Um im neu geöffneten zweiten Formular auf den letzten Datensatz des strukturellen Hauptformulares zu springen, habe ich das Makro wie folgt erweitert:

Code: Alles auswählen

Sub Formular_oeffnen_schliessen(oEvent AS OBJECT)
    DIM stZiel AS String
    aFormStart() = Split(thisComponent.Title, thisComponent.UntitledPrefix)
    stZiel = oEvent.Source.Model.Tag
    oFormZiel = ThisDatabaseDocument.FormDocuments.getByName( Trim(stZiel) ).open
    ThisDatabaseDocument.FormDocuments.getByName( Trim(aFormStart(1)) ).close
    oStruktFormZiel = oFormZiel.Drawpage.Forms(0)'strukturelles Haupformular
    'Abwarten bis das Formular geladen ist
    do
        wait 10
    loop until oStruktFormZiel.isloaded
    'zum letzten Datensatz springen
    oStruktFormZiel.Last
End Sub
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO

Helles58
Beiträge: 115
Registriert: Mo 17. Jul 2017, 19:51

GELÖST - Re: Letzten DS anwählen bei Formular öffnen

Beitrag von Helles58 » Fr 16. Mai 2025, 18:59

Hallo F3K Total,

danke für die schnelle Beantwortung.

Wünsche dir ein Frohes Wochenende.

Gruß Helles58


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