❤️ 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!🍀
>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
Zeile markieren hervorheben bei Auswahl einer Zelle [gelöst]
Zeile markieren hervorheben bei Auswahl einer Zelle [gelöst]
Hallo zusammen,
ich suche iene Möglichkeit die ganze Zeile oder im ideal Fall nur einen festgelegten Breich einer Zeile hervorzuheben sobald ich eine Zelle dieser Zeile anklicke.
Lässt sich das irgendwie mit bedingter Formatierung bewältigen oder eher per Makro?
Vielen Dank und Grüße
ich suche iene Möglichkeit die ganze Zeile oder im ideal Fall nur einen festgelegten Breich einer Zeile hervorzuheben sobald ich eine Zelle dieser Zeile anklicke.
Lässt sich das irgendwie mit bedingter Formatierung bewältigen oder eher per Makro?
Vielen Dank und Grüße
Zuletzt geändert von Tschubi am Sa 24. Jun 2023, 16:13, insgesamt 1-mal geändert.
Ubuntu 22.04.2 LTS / Windows 11 / LO 7.3.7.2
Re: Zeile markieren hervorheben bei Auswahl einer Zelle
Moin,
ich habe das mal programmiert, siehe auch Beispiel anbei.
Hänge das Makro S_change_cellbackcolor_in_actual_row an das Tabellenereignis
Auswahl geändert.
Gruß R
ich habe das mal programmiert, siehe auch Beispiel anbei.
Code: Alles auswählen
global noldrow as integer
global osheet as object
global bfirst as boolean
Sub S_change_cellbackcolor_in_actual_row(event)
if not bfirst then goto 100
S_remove_cellbackcolor_in_old_row
100:
ocell = event
if ocell.supportsservice("com.sun.star.sheet.SheetCell") then
ocelladdress = ocell.celladdress
nsheet = ocelladdress.sheet
osheet = thiscomponent.sheets(nsheet)
nRow = ocelladdress.Row
noldrow = nRow
orange = osheet.getcellrangebyposition(0,nRow,6,nRow)'A=0 bis G=6
orange.CellBackColor = 16760320
endif
bfirst = true
End Sub
Sub S_remove_cellbackcolor_in_old_row
orange = osheet.getcellrangebyposition(0,noldRow,6,noldRow)'A=0 bis G=6
orange.CellBackColor = -1
End Sub
- Dateianhänge
-
- change_cellbackcolor_current_row.ods
- (13.25 KiB) 229-mal heruntergeladen
Windows 11: AOO, LO Linux Mint: AOO, LO
Re: Zeile markieren hervorheben bei Auswahl einer Zelle
Hallo F3k Total,
super besten Dank.
Nachdem ich mir deine Umsetzung angeschuat habe ist mir bewusst geworden, dass die Zellen wo ich das gern einsetzen wollen würde ja bereits eine Hintergrundfarbe, nicht weiß, haben.
Jetzt habe ich aus anderen Beiträgen in dein Makro eine Funktionen eingefügt um die Zellenfarbe zuvor auszulesen um diese dann wieder setzen zu können. (siehe Datei Anhang)
Das Funktioniert aber nicht wie gedacht.
Kannst du dir das bitte mal anschauen?
Ich frage mich auch ob die Idee in der Praxis so die Beste ist, denn im Tabellenblatt gibt es ja auch andere Bereiche in welchen ich Daten erfasse und das Makro greift ja immer wenn eine Zelle ausgewählt wird. Vielleicht ist es sinnvoller nur im gewünschten Bereich die Schrift fett zu machen um eine schnelle Zuordnung auf die Zeile bzw. den Bereich zu bekommen, hm.
Vielen Dank und Gruß
super besten Dank.
Nachdem ich mir deine Umsetzung angeschuat habe ist mir bewusst geworden, dass die Zellen wo ich das gern einsetzen wollen würde ja bereits eine Hintergrundfarbe, nicht weiß, haben.
Jetzt habe ich aus anderen Beiträgen in dein Makro eine Funktionen eingefügt um die Zellenfarbe zuvor auszulesen um diese dann wieder setzen zu können. (siehe Datei Anhang)
Das Funktioniert aber nicht wie gedacht.

Ich frage mich auch ob die Idee in der Praxis so die Beste ist, denn im Tabellenblatt gibt es ja auch andere Bereiche in welchen ich Daten erfasse und das Makro greift ja immer wenn eine Zelle ausgewählt wird. Vielleicht ist es sinnvoller nur im gewünschten Bereich die Schrift fett zu machen um eine schnelle Zuordnung auf die Zeile bzw. den Bereich zu bekommen, hm.
Vielen Dank und Gruß
- Dateianhänge
-
- change_cellbackcolor_current_row.ods
- (25.26 KiB) 222-mal heruntergeladen
Ubuntu 22.04.2 LTS / Windows 11 / LO 7.3.7.2
Re: Zeile markieren hervorheben bei Auswahl einer Zelle
... dann forsche mal schön, du hast alles bekommen, was nötig ist.
Viel Spaß Gruß R
Viel Spaß Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO
Re: Zeile markieren hervorheben bei Auswahl einer Zelle
Die alte Farbe muss in einer Variable gespeichert werden, die zudem im Dokument mit gespeichert wird, denn wenn Du z.B. eine ursprünglich rote Zeile markiert hattest, die nun graublau ist, willst du ja beim Wiederöffnen der Datei diese rote farbe wiederherstellen können.Tschubi hat geschrieben: ↑Sa 17. Jun 2023, 12:29Nachdem ich mir deine Umsetzung angeschuat habe ist mir bewusst geworden, dass die Zellen wo ich das gern einsetzen wollen würde ja bereits eine Hintergrundfarbe, nicht weiß, haben.
Jetzt habe ich aus anderen Beiträgen in dein Makro eine Funktionen eingefügt um die Zellenfarbe zuvor auszulesen um diese dann wieder setzen zu können. (siehe Datei Anhang)
Das Funktioniert aber nicht wie gedacht.Kannst du dir das bitte mal anschauen?
Deshalb ist im angehängten Beispiel unter Datei->Eigenschaften->Benutzerdefinierte Eigenschaften eine Variable "oldfarbe" eingerichtet, die im Makro verwendet wird.
Ja, viel Spaß beim experimentieren. (Ich glaube mich zu erinnern, dass es komplizierter wird, Schrifteffekte zu verändern.)Tschubi hat geschrieben: ↑Sa 17. Jun 2023, 12:29Ich frage mich auch ob die Idee in der Praxis so die Beste ist, denn im Tabellenblatt gibt es ja auch andere Bereiche in welchen ich Daten erfasse und das Makro greift ja immer wenn eine Zelle ausgewählt wird. Vielleicht ist es sinnvoller nur im gewünschten Bereich die Schrift fett zu machen um eine schnelle Zuordnung auf die Zeile bzw. den Bereich zu bekommen, hm.
Vielen Dank und Gruß
- Dateianhänge
-
- change_cellbackcolor_current_row2.ods
- (22.69 KiB) 204-mal heruntergeladen
Win7 Pro, Sibelius 7.1.3, Lubuntu 15.10, LibO 4.4.7, OO 4.1.3
Free Project: LibreOffice Songbook Architect (LOSA)
http://struckkai.blogspot.de/2015/04/li ... itect.html
Free Project: LibreOffice Songbook Architect (LOSA)
http://struckkai.blogspot.de/2015/04/li ... itect.html
Re: Zeile markieren hervorheben bei Auswahl einer Zelle
Hallo musikai,
besten Dank für deine Arbeit. Ich habe noch eine Verständnisfrage.
Danke und Gruß
besten Dank für deine Arbeit. Ich habe noch eine Verständnisfrage.
Das macht Sinn und ist nachvollziehbar. Was ich nicht verstehe warum diese Variable "oldfarbe" in den Eigenschaften definiert wird und nicht als globale Variable im Makro und warum diese den Wert -1 hat?Die alte Farbe muss in einer Variable gespeichert werden, die zudem im Dokument mit gespeichert wird, denn wenn Du z.B. eine ursprünglich rote Zeile markiert hattest, die nun graublau ist, willst du ja beim Wiederöffnen der Datei diese rote farbe wiederherstellen können.
Deshalb ist im angehängten Beispiel unter Datei->Eigenschaften->Benutzerdefinierte Eigenschaften eine Variable "oldfarbe" eingerichtet, die im Makro verwendet wird.
Danke und Gruß
Ubuntu 22.04.2 LTS / Windows 11 / LO 7.3.7.2
Re: Zeile markieren hervorheben bei Auswahl einer Zelle
Eine globale Variable überlebt keinen Programm-Neustart, sondern wird zurückgesetzt.
Wenn Du also als letztes eine rote Zeile markiert hattest, würde diese am nächsten Tag wieder auf "keine Farbe" zurückgesetzt werden.
-1 bedeutet "keine Farbe". Diesen Wert habe ich nur voreingestellt, weil in der Datei als letztes eine Zeile markiert war, die ursprünglich keine Farbe hatte.
Außerdem könntest Du ja mehrere unterschiedliche Dateien haben, in denen der Cursor an verschiedenen Stellen gesetzt war.
(Insgesamt müsste man das Macro evtl. noch anpassen für den Fall, dass Du mehrere Zellen ausgewählt hast, da versagt es zur Zeit. usw.)
Win7 Pro, Sibelius 7.1.3, Lubuntu 15.10, LibO 4.4.7, OO 4.1.3
Free Project: LibreOffice Songbook Architect (LOSA)
http://struckkai.blogspot.de/2015/04/li ... itect.html
Free Project: LibreOffice Songbook Architect (LOSA)
http://struckkai.blogspot.de/2015/04/li ... itect.html
Re: Zeile markieren hervorheben bei Auswahl einer Zelle
Hallo musikai,
danke für die Erklärungen und macht es nachvollziehbarer für mich - Top
Für meinen Einsatzzweck sollte es so reichen und ich werde jetzt mal das in der Praxis etwas testen. Habe das Makro "S_change_cellbackcolor_in_actual_row" jetzt mal auf Doppelklick zugewiesen und auf Rechtsklick das "S_remove_cellbackcolor_in_old_row" dann kann ich weiterhin Zellen / Zeilen markieren und einfügen ohne, dass das Makro greift.
Vielleicht kannst du mir noch sagen wie ich Schrift Bold noch mit setzen könnte und wieder zurück.
Danke!
danke für die Erklärungen und macht es nachvollziehbarer für mich - Top
Für meinen Einsatzzweck sollte es so reichen und ich werde jetzt mal das in der Praxis etwas testen. Habe das Makro "S_change_cellbackcolor_in_actual_row" jetzt mal auf Doppelklick zugewiesen und auf Rechtsklick das "S_remove_cellbackcolor_in_old_row" dann kann ich weiterhin Zellen / Zeilen markieren und einfügen ohne, dass das Makro greift.
Vielleicht kannst du mir noch sagen wie ich Schrift Bold noch mit setzen könnte und wieder zurück.
Danke!
Ubuntu 22.04.2 LTS / Windows 11 / LO 7.3.7.2
Re: Zeile markieren hervorheben bei Auswahl einer Zelle
Gerne, immer froh, wenn's jemand versteht.
Musste selbst erstmal hier nachlesen:
https://www.prooo-box.org/live/dokument ... eutsch.pdf
Man kann direkt die Eigenschaften im Service com.sun.star.style.CharacterProperties anwenden.
Zu finden in
Tabelle 135. Eigenschaften im Service com.sun.star.style.CharacterProperties.
https://www.prooo-box.org/live/dokument ... 789%2C0%5D
Also so:
Code: Alles auswählen
orange.CharWeight = com.sun.star.awt.FontWeight.BOLD
orange.CharWeight = com.sun.star.awt.FontWeight.NORMAL
- Dateianhänge
-
- change_cellbackcolor_current_row3.ods
- (26.08 KiB) 236-mal heruntergeladen
Win7 Pro, Sibelius 7.1.3, Lubuntu 15.10, LibO 4.4.7, OO 4.1.3
Free Project: LibreOffice Songbook Architect (LOSA)
http://struckkai.blogspot.de/2015/04/li ... itect.html
Free Project: LibreOffice Songbook Architect (LOSA)
http://struckkai.blogspot.de/2015/04/li ... itect.html
Re: Zeile markieren hervorheben bei Auswahl einer Zelle
Hallo musikai,
perfekt! Dankeschön.
Auch für die Links zu den PDFs.
Schönes WE
perfekt! Dankeschön.
Auch für die Links zu den PDFs.
Schönes WE
Ubuntu 22.04.2 LTS / Windows 11 / LO 7.3.7.2
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.