Hallo Gemeinde,
ich habe einen Bereich von Zelle A1:C3, also neun Zellen. Jetzt wähle ich mit einer Checkbox eine Farbe aus und erhalte nach einem Mausklick die ausgewählte Zelle mit farbigem Hintergrund. Den gesamten Bereich habe ich "Box1" genannt. Mit einer zweiten Checkbox wähle ich entweder die Zelle oder die Box. Ist es möglich, dass Calc erkennt: diese Zelle liegt in einem Bereich und zwar mit Namen "Box1" und mir so den gesamten Bereich farbig hinterlegt? Egal welche Zelle zwischen A1 und C3 ich anklicke?
[gelöst] bereiche in calc
Moderator: Moderatoren
[gelöst] bereiche in calc
Zuletzt geändert von jef0815 am Di, 04.12.2018 12:48, insgesamt 1-mal geändert.
Re: bereiche in calc
Hallo,
das folgende Code-Schnipsel könnte dir weiterhelfen:
das folgende Code-Schnipsel könnte dir weiterhelfen:
Code: Alles auswählen
Sub Main
oBereich=ThisComponent.NamedRanges.getByName("Box1").getReferredCells
oCell=Thiscomponent.currentselection
if oBereich.queryintersection(oCell.rangeaddress).count>0 then
msgbox "im Bereich"
else
msgbox "nicht im Bereich"
end if
End Sub
Gruß,
mikeleb
mikeleb
Re: bereiche in calc
Moin,
deine Beschreibung ist etwas zu dürftig, was genau möchtest du erreichen?
Ich meine, neun Zellen einmal zu markieren und dann farbig zu hinterlegen ist schonmal kein Hexenwerk.
Wenn du die Farbe z.B. mit Optionsfeldern auswählen möchtest, brauchst du dafür auch kein Makro, geht mit der "bedingten Formatierung" bis zu drei Farben ohne Probleme, siehe Beispiel anbei.
Gruß R
deine Beschreibung ist etwas zu dürftig, was genau möchtest du erreichen?
Ich meine, neun Zellen einmal zu markieren und dann farbig zu hinterlegen ist schonmal kein Hexenwerk.
Wenn du die Farbe z.B. mit Optionsfeldern auswählen möchtest, brauchst du dafür auch kein Makro, geht mit der "bedingten Formatierung" bis zu drei Farben ohne Probleme, siehe Beispiel anbei.
Gruß R
- Dateianhänge
-
- Optionsfeld_Hintergrundfarbe.ods
- (8.74 KiB) 101-mal heruntergeladen
- miniKasse MMove 1.0.6 Base Videotutorial
- Windows 10: AOO, LO Linux Mint: AOO, LO
Re: bereiche in calc
Aha,
nun, ich wollte es wissen, mit diesem Makro geht es dann, wenn du die 9 Bereiche festlegst:
Beispiel anbei, Makros müssen natürlich erlaubt werden.
nun, ich wollte es wissen, mit diesem Makro geht es dann, wenn du die 9 Bereiche festlegst:
Code: Alles auswählen
global oLastCell as object
global bStart as boolean
Sub set_backgroundcolor(event)
dim nStatus as integer
oSheet = ThisComponent.Sheets.getbyname("Tabelle1")
oStatusCell = oSheet.getCellbyposition(9,0)'J1
oColorCell = oSheet.getCellbyposition(10,0)'K1
nColor = oColorCell.CellBackcolor
nStatus = oStatusCell.string
oRange = oSheet.getcellRangebyposition(0,0,8,8)'der gesamte Bereich
if bStart Then oLastCell.CellBackcolor = - 1
if oRange.queryIntersection(event.Rangeaddress).count > 0 then
oLastCell = event
bStart = 1
if nStatus = 0 then
event.CellBackcolor = nColor
oLastCell = event
else
oNamedRanges = thisComponent.NamedRanges
for i = 0 to oNamedRanges.count - 1
oNamedRangeCells = oNamedRanges(i).referredCells
if oNamedRangeCells.queryIntersection(event.Rangeaddress).count > 0 then
oNamedRangeCells.CellBackcolor = nColor
oLastCell = oNamedRangeCells
endif
next i
endif
endif
End Sub
- Dateianhänge
-
- Bereiche_einfaerben.ods
- (10.76 KiB) 101-mal heruntergeladen
- miniKasse MMove 1.0.6 Base Videotutorial
- Windows 10: AOO, LO Linux Mint: AOO, LO
Re: bereiche in calc
Vielen Dank, das ist genau was ich wollte. Spitze!!!
Gruß Jürgen
Gruß Jürgen