Guten Morgen
ich versuche jetzt schon seit gefühlten Ewigkeiten in Calc Formularfelder per Makro unsichtbar, bzw. sichtbar zu machen.
Ich habe mehrere Tabellenblätter, die jeweils die vier gleichen Datums- und Uhrzeit-Felder haben. In jedem Sheet heißen die Felder immer gleich. Das Formular heißt auch in allen Sheets immer gleich: "Formular".
Das Makro darf immer nur im gerade aktiven Sheet die diese 4 bestimmten Felder sichtbar/unsichtbar schalten. Auf allen anderen Sheets muss es bleiben wie es ist.
Ich habe es aber bisher nicht einmal auf einem einzigen Sheet auch nur ein Feld sichtbar, bew. unsichtbar zu machen. Alles was ich im Netz gefunden habe, scheint sich auf Makros für Base zu beziehen.
Versucht habe ich bisher solche Sachen wie:
Sub Visible
oDoc = thisComponent
oController = oDoc.getCurrentController()
'( oform=odoc.drawpage.forms.getbyindex(0) )
oform=odoc.drawpage.forms.getbyname("Formular")
oKontroll = oForm.getByName("Schaltfläche 1")
oKView = oController.getControl(oKontroll)
oKView.visible = false
end sub
Als Fehlermeldung bekomme ich dann "Eigenschaft oder Methode nicht gefunden: drawpage."
Wer weiß wie so was geht? Bin da für jede Hilfe sehr dankbar
Beste Grüße
Rupp
BITTE helfen Sie uns HEUTE mit einer SPENDE
Helfen Sie das LibreOffice Forum zu erhalten!
> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
Formularfeld mit Makro sichtbar/unsichtbar schalten - gelöst
Formularfeld mit Makro sichtbar/unsichtbar schalten - gelöst
Zuletzt geändert von Rupp am Mi 31. Mär 2021, 12:14, insgesamt 1-mal geändert.
Re: Formularfeld mit Makro sichtbar/unsichtbar schalten
drawpage gehört zum sheet, nicht zum document, also bei nur einem sheet:
thisComponent.sheets(0).drawpage
thisComponent.sheets(0).drawpage
LO 24.2.0.3 (X86_64) auf Linux 6.6.19-1-MANJARO, gnome 45.4, (gtk 4) gtk3 für LO
Re: Formularfeld mit Makro sichtbar/unsichtbar schalten - gelöst
Dankeschön für die Anregung
Ich habe es jetzt mit Hilfe von Stephan ( www.oooforum.de ) gut lösen können.
Folgender Code funktioniert pefekt:
Ich habe es jetzt mit Hilfe von Stephan ( www.oooforum.de ) gut lösen können.
Folgender Code funktioniert pefekt:
Code: Alles auswählen
Sub Visible()
oDoc = ThisComponent
oActiveSheet = oDoc.currentController.ActiveSheet
oKontroll = oActiveSheet.Drawpage.Forms.getByName("Formular").getByName("Datumsfeld 1")
oKontroll.enableVisible = False
End Sub
An alle, die das LibreOffice-Forum nutzen:
Bitte beteiligen Sie sich mit 7 Euro pro Monat und helfen uns bei unserem Budget für das Jahr 2024.
Einfach per Kreditkarte oder PayPal.
Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet.
❤️ Vielen lieben Dank für Ihre Unterstützung ❤️