Hallo André,
bringt die Function keine Fehlermeldung bei Dir?
Wenn nicht, könnte es sein, dass Du die Makrosicherheit unter Menue > Extras > Optionen > OO.o > Sichherheit auf "Hoch" stehen hast?
Andre01 hat geschrieben:Da scheint noch der Wurm drin zusein....
Nicht nur einer.
Hier beschreibst Du die Variablen oStart und oEnde.
Andre01 hat geschrieben: oStart = osheet.getCellRangeByName(begin) 'zu prüfender anfang Zellbereich
oEnde = osheet.getCellRangeByName(ende) 'zu prüfender ende Zellbereich
Und hier beschreibst Du die Variable oStart neu!
Andre01 hat geschrieben:ostart=oCellRange.getCellByPosition(m,i)
Ausserdem ist
Andre01 hat geschrieben:ostart=oCellRange.getCellByPosition(m,i)
auch nicht definiert!
Hier mal ein funktionierender Code:
Code: Alles auswählen
function farbe_zaehlen(begin,ende,R,G,B)
oDoc = thisComponent
oSheet = oDoc.sheets(0) 'erstes Tabellenblatt
oBereich = oSheet.getCellRangeByName(begin & ":" & ende)
x = 0
y = 0
'auslesen der Eckpunkte
iErsteSpalte = oBereich.rangeAddress.startColumn
iErsteZeile = oBereich.rangeAddress.startRow
iLetzteSpalte = oBereich.rangeAddress.EndColumn
iLetzteZeile = oBereich.rangeAddress.EndRow
For i = 0 to iLetzteZeile-iErsteZeile
For m = 0 to iLetzteSpalte-iErsteSpalte
ostart=oBereich.getCellByPosition(m,i)
if ostart.Cellbackcolor(R,G,B) = RGB (R,G,B) then ' Farbe blau
x = x + 1
end if
next m
next i
farbe_zaehlen = x
End function
Viel Erfolg.
Jürgen