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

Verknüpfte Zellen in Formular-Steuerelementen beim kopieren NICHT erhalten

CALC ist die Tabellenkalkulation, die Sie immer wollten.
Antworten
ffakir
Beiträge: 2
Registriert: Mi 17. Feb 2016, 14:19

Verknüpfte Zellen in Formular-Steuerelementen beim kopieren NICHT erhalten

Beitrag von ffakir » Mi 17. Feb 2016, 14:39

Hallo Community,

leider bin ich gerade nach langer Nutzung von Calc auf ein Problem gestoßen, das ich nicht mit dem Wiki oder den vorhandenen Threads hier lösen konnte, hoffentlich ist es aber völlig trivial:

Ich habe in einer Calc-Datei erstmal zwei Tabellen angelegt: "Gewichtung" und "Vorlage".
In Vorlage sind mehrere Checkboxen ("Markierfelder") enthalten, die ihren Wert jeweils auf eine Zelle in der gleichen Tabelle überträgt. Unter "Eigenschaften:Markierfeld" > "Daten" > "Verkünpfte Zelle" steht zum Beispiel "C3".
Andere Zellen in der Tabelle beziehen sich auf Zellen in der Tabelle Gewichtung. (z.B. "=Gewichtung.D5")

Das Ziel ist nun, dass ich die Tabelle "Vorlage" beliebig oft duplizieren kann und dabei:
1. Die auf die Tabelle "Gewichtung" referenzierten Zellen weiter auf diese referenzieren (Ist schon so)
2. Die "Markierfelder" immer in den neuen Kopien mit der entsprechenden Zelle verknüpft bleiben (Ist nicht so)

in den Kopien sind die Felder immer mit "Vorlage.C3" verknüpft und nicht weiterhin mit "C3" der neuen Tabelle.
Wie kann ich Calc dazu bringen, zu tun was ich vorhabe? Gibt's so etwas wie "this.C3" in den Eigenschaften von Formular-Steuerelementen?

Viele Grüße,

Fabian
Zuletzt geändert von ffakir am Mi 17. Feb 2016, 19:23, insgesamt 1-mal geändert.

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

Re: Verkünpfte Zellen in Formular-Steuerelementen beim kopieren NICHT erhalten

Beitrag von F3K Total » Mi 17. Feb 2016, 17:05

Hi,
habe alle mir einfallenden Möglichkeiten ausprobiert, NEIN, geht nicht.
Einzige Möglichkeit: Ein Makro, das die verknüpften Zellen ändert.
Anbei ein Beispiel, es werden alle Markierfelder auf das aktuelle Blatt verlinkt, deren Namen mit Markier beginnen.

Code: Alles auswählen

Sub S_Relink_Checkboxes
    Dim oNamedValue as new com.sun.star.beans.NamedValue
    oSheet = ThisComponent.CurrentController.ActiveSheet
    nSheet = oSheet.RangeAddress.Sheet
    oform = oSheet.drawpage.Forms(0)
    ncounter = 0
    for i = 0 to oform.count - 1
        oControl = oform(i)
        if Left(oControl.name,7) = "Markier" then
            nCounter = nCounter + 1
            oValueBinding = oControl.ValueBinding
            aBoundCellAddress = oControl.ValueBinding.BoundCell
            aBoundCellAddress.Sheet = nSheet
            oNamedValue.Name  = "BoundCell"
            oNamedValue.Value = aBoundCellAddress
            oCellValueBinding = ThisComponent.createInstance("com.sun.star.table.CellValueBinding")
            oCellValueBinding.Initialize(Array(oNamedValue))
            oControl.setValueBinding(oCellValueBinding)
        endif
    next i
    msgbox "Fertig, "+nCounter+" Verknüpfungen auf dieses Blatt gesetzt"
End Sub
Damit das Makro laufen darf, stellst du unter Extras/Optionen/LibreOffice/Sicherheit/Makrosicherheit mindestens die Stufe Mittel ein, dann wirst du beim Öffnen von Dokumenten gefragt, ob du Makros ausführen möchtest.

Die Markierfelder auf Tabelle2 der angehängten Datei, sind noch auf Tabelle1 verlinkt, drücke die Schaltfläche und schau was passiert.

Gruß R
Dateianhänge
Relink_Checkboxes.ods
(11.33 KiB) 132-mal heruntergeladen
Windows 11: AOO, LO Linux Mint: AOO, LO

ffakir
Beiträge: 2
Registriert: Mi 17. Feb 2016, 14:19

Re: Verknüpfte Zellen in Formular-Steuerelementen beim kopieren NICHT erhalten

Beitrag von ffakir » Mi 17. Feb 2016, 19:43

Super, vielen Dank, funktioniert!

Sollte mich mittelfristig wohl mal mit Makros auseinandersetzen. Wäre das vielleicht auch was für ein Feature Request? Man könnte ja in das Verknüfte Feld einfach ein Sonderzeichen einfügen (!, $, this. oder so).

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

Re: Verknüpfte Zellen in Formular-Steuerelementen beim kopieren NICHT erhalten

Beitrag von F3K Total » Mi 17. Feb 2016, 20:15

Hi,
ffakir hat geschrieben:Wäre das vielleicht auch was für ein Feature Request?
Mußt su selber wissen, hier handelt es sich um ein Anwenderforum, da mußt du dich an LibreOffice wenden. Ich halte dies für wenig aussichtreich. Mir ist so ein Wunsch in den letzten Jahren auf jeden Fall noch nie untergekommen.
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO


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