CheckBox nicht Mitschalten auf kopierten Tabellenblättern

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

Moderator: Moderatoren

Tadeus.
Beiträge: 6
Registriert: Do, 30.05.2019 10:44

CheckBox nicht Mitschalten auf kopierten Tabellenblättern

Beitrag von Tadeus. » So, 02.06.2019 17:30

Hallo,
Checkboxen setzen mit .State = 1/0 oder Verbundene Zelle.Value = 1/0 setzt auch
gleichzeitig die CheckBoxen in anderen Tabellenblättern.
Auch mit x=getRangeAddress().sheet in sheets.getByIndex(x) keine Änderung
Gibt es andere Möglichkeit oder doch mit x=getRangeAddress() in Macro ?
oder kann Tabellenblatt beim Kopieren komplett gesperrt werden?

mikeleb
******
Beiträge: 824
Registriert: Fr, 09.12.2011 16:50

Re: CheckBox nicht Mitschalten auf kopierten Tabellenblättern

Beitrag von mikeleb » So, 02.06.2019 18:30

Hallo,
Checkboxen setzen mit .State = 1/0 oder Verbundene Zelle.Value = 1/0 setzt auch
gleichzeitig die CheckBoxen in anderen Tabellenblättern.
wenn alle Checkboxen mit derselben Zelle verbunden sind logischerweise.
Auch mit x=getRangeAddress().sheet in sheets.getByIndex(x) keine Änderung
Was hat das mit den Checkboxen zu tun?
oder kann Tabellenblatt beim Kopieren komplett gesperrt werden?
???
Gruß,
mikeleb

mikeleb
******
Beiträge: 824
Registriert: Fr, 09.12.2011 16:50

Re: CheckBox nicht Mitschalten auf kopierten Tabellenblättern

Beitrag von mikeleb » So, 02.06.2019 18:40

Hallo,
wenn ich es recht verstehe, kopierst du ein Tabellenblatt mit Checkboxen.
Aus irgendwelchen Gründen ist die verbundene Zelle allerdings absolut adressiert (unabhängig, wie es eingegeben wird).
Das wird sich nicht ändern lassen. Also entweder du kannst auf die Verbindung zu einer Zelle verzichten oder du korrigierst du Zelladressierung (per Makro am schnellsten).
Gruß,
mikeleb

Stephan
********
Beiträge: 11286
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: CheckBox nicht Mitschalten auf kopierten Tabellenblättern

Beitrag von Stephan » So, 02.06.2019 19:46

verbinde die Checkbox nicht mit einer Zelle sondern setze den Zellwert per Makro zugeordnet dem Ereignis "Status geändert" der Checkbox. Dann sollte das die Checkbox enthaltene Tabellenblatt beliebig kopierbar sein.

Code: Alles auswählen

Sub Main(rueck)
	With ThisComponent.CurrentController.ActiveSheet
		.getCellRangeByName("A1").FormulaLocal = rueck.Source.state
	End With 
End Sub


Gruß
Stephan

Antworten