Seite 1 von 2
Aufaddieren der rot gefärbten Zahlen in einer Spalte
Verfasst: So, 04.10.2009 22:41
von andrel1967
Hi,
steige gerade von XP auf MAC um und wollte meine Excel Sheet samt der kleinen Funktion hier
dort mit Open Office weiterführen.
So ging´s bei Excel...
Function FarbSumme(Bereich As Range)
FarbSumme = 0
For Each Zelle In Bereich
If Zelle.Font.ColorIndex = 3 Then
FarbSumme = FarbSumme + Zelle.Value
End If
Next
End Function
...aber bei OpenOffice geht´s so nicht. Auch nicht wenn aus Zelle Cell wird und Bereich dann Rage heißt.
Habt Ihr da mal n Tipp!!!???
Re: Aufaddieren der rot gefärbten Zahlen in einer Spalte
Verfasst: Mo, 05.10.2009 08:56
von Eddy
Hai andrel,
Habt Ihr da mal n Tipp!!!???
im Unterforum OOo Basic und Java fragen...
Mit getippten Grüßen
Eddy
Re: Aufaddieren der rot gefärbten Zahlen in einer Spalte
Verfasst: Mo, 05.10.2009 09:07
von komma4
Willkommen im Forum.
andrel1967 hat geschrieben:Habt Ihr da mal n Tipp!!!???
Umbauen!
Nehme die Funktion
"bedingte Formatierung" zum Einfärben der Zellen und die gleiche Bedingung zum Zählen - dann braucht es kein Makro.
Geht das?
Re: Aufaddieren der rot gefärbten Zahlen in einer Spalte
Verfasst: Mo, 05.10.2009 09:16
von Gert Seler
Hallo andrel,
erstens versteht OpenOffice kein VBA_Basic. Zweitens hat Eddy nur insoweit Recht, das für "Ooo_Basic" ein anderes Forum
zuständig ist (siehe Forumsübersicht).
Drittens
die Bedingte Formatierung mit Änderung der Zellfarbe oder Farbe der Schrift wird in "OpenOffice_Calc" anders
gehandhabt. Hier werden "ZellVorlagen" erstellt und mit der "Bedingten Formatierung" verknüpft. Siehe :
http://www.ooowiki.de/CalcFormatBedingt
Bitte durchlesen.
mfg
Gert
Re: Aufaddieren der rot gefärbten Zahlen in einer Spalte
Verfasst: Mo, 05.10.2009 09:39
von andrel1967
????
mei, kein leichter Umstieg
Ich hab in einer Spalte ca 20 Zeilen automatisch gefärbter Zahlen die ich in z.B. B25 summiere.
Im laufe des Monats (Zahlungsein- bzw ausgänge) werden dies Zelle auf rot gesetzt und in B26 addiert.
In B27 steht dann die Summe aus B25 und B26, so dass am Ende des Monats idealerweise B25 Null ist, B26 (die rote Zahlen)
und B27 gleich sind.
Eigentlich total einfach und übersichtlich, bei Excel kein Problem.
Allerdings hat das nach meinem Verständnis nix mit bedingter Formatierung zu tun, da ich die Zahlen ja selber
"färbe", sondern eher mit bedingter Summierung oä.
Re: Aufaddieren der rot gefärbten Zahlen in einer Spalte
Verfasst: Mo, 05.10.2009 11:32
von Gert Seler
Hallo andrel,
"komma4" hat schon einen Vorschlag mit "Bedingter Formatierung" und "Addition" der Zahlen geliefert.
Ich hab aber noch eine Frage : "Worin unterscheiden sich die Zahlenwerte (rot versus standard-Format)."
Werden hier nur positive und negative Werte (rot) addiert ?
Dann geht es auch über die normale "Benutzerdefinierte Formatierung." Wie im "wiki-Beispiel" dargestellt.
Siehe :
Negative Werte rot anzeigen
oder
Plus- und Minuszeichen vor den Zahlen
Bei der "Addition" von Plus- (+) & MinusWerten (-) werden mit der Funktion "SUMME" die Minuswerte automatisch von den Pluswerten
substrahiert. Mit Währungseinheiten folgende " Benutzerdefinierte Formatierung "
Format ---->Zellen...Kategorie=Währung;
Formatcode (Benutzerdefiniert) = #.##0,00 [$€-407];[ROT]-#.##0,00 [$€-407]
mfg
Gert
Re: Aufaddieren der rot gefärbten Zahlen in einer Spalte
Verfasst: Mo, 05.10.2009 17:51
von andrel1967
Hi Gert,
ne, Rot ist rein zufällig die Markierung für bereits getätigte Zahlungen etc.
Es wird also im IST nur rot aufaddiert, hat also nichts mit bedingter Formatierung zu tun.
Die sollen sich ja nicht selber rot färben, das mach ich, aber die Summe soll sich daraufhin ändern ?!
Gruß und Danke
Re: Aufaddieren der rot gefärbten Zahlen in einer Spalte
Verfasst: Mo, 05.10.2009 17:54
von komma4
Dann ändere den Ansatz:
füge eine Spalte "bezahlt" hinzu, schreibe dort ein "X", ein "ja" oder das Datum der Zahlung rein.
Dann kannst Du mit einer SUMMEWENN-Formel addieren.
Eine Färbung erhälst Du wieder über die bed. Formatierung.
Re: Aufaddieren der rot gefärbten Zahlen in einer Spalte
Verfasst: Mo, 05.10.2009 18:38
von andrel1967
Hi Komma4,
Danke Dir für den Tipp.
So habe ich es am Anfang gemacht, aber im Laufe der Jahr ist das Ding recht komplex geworden
und bei solchen Sachen helfen dann eben Makros oder VBAs enorm.
Ist ja auch echt nicht soo schwer.
Wundere mich nur dass das in OO nicht möglich sein soll ?!
Das Prog kann doch Basic, oder?
Mit welcher Funktion bekomm ich den raus, ob die Zahl/Zelle gefärbt ist oder nicht.
Oder gibt´s n Befehl der mir den Farbwert rausgibt z.B. interior.color(B17)= [ROT] oder Farbe(B17)=Falsch
Gibt´s sowas in Calc?
Dann könnte man mit Summewenn bei Kriterien vielleicht was machen
Grüße
Re: Aufaddieren der rot gefärbten Zahlen in einer Spalte
Verfasst: Mo, 05.10.2009 19:59
von turtle47
Hi,
andrel1967 hat geschrieben:Mit welcher Funktion bekomm ich den raus, ob die Zahl/Zelle gefärbt ist oder nicht.
Code: Alles auswählen
function oWert(vonZeile , bisZeile, tab, oSpalte) as integer
osheet = thisComponent.sheets( tab -1 )
oCol = oSpalte -1
sRow = vonZeile -1
eRow = bisZeile -1
oWert = 0
for i = sRow to eRow
if osheet.getcellbyposition(oCol,i).CharColor = RGB(255, 0, 0) then
oWert = oWert + osheet.getcellbyposition(oCol,i).value
end if
next i
End function
In die Zielzelle schreibst Du für Zeile 1 bis 10, Tabelle1, Spalte1:
Aktualisieren musst Du allerdings manuell mit Strg + Shift + F9
Jürgen
Re: Aufaddieren der rot gefärbten Zahlen in einer Spalte
Verfasst: Di, 06.10.2009 08:10
von andrel1967
Moin Jürgen,
vielen Dank für die Mühe, aber dein Skript bezieht sich ja nur auf einen kleine definierten Bereich.
Ich hab aber zig Spalten. Brauch was also allgemeines
Gibt es denn nicht eine Abfrage des Zellwertes...ist in Zelle xy Farbe -> Falsch oder Wahr oder so ähnlich.
Dann komm ich wenigstens mit Summewenn () weiter.
schönen Tag Euch!
Re: Aufaddieren der rot gefärbten Zahlen in einer Spalte
Verfasst: Di, 06.10.2009 08:56
von clag
Hallo andrel1967
auch wenn ich Gefahr laufe mich hier im Forum unbeliebt zu machen (wenn ich es nicht schon bin)
muss ich dir aus meiner Umstiegserfahrung Ecel/OOo berichten,
wenn du von langjähriger Excel Nutzung auf OOo umsteigst wirst du an etlichen Stellen Funktion vermissen die du bisher gewohnt warst........
Wenn du ein Fan von Diagrammen bist wirst du auch noch ein paar mal trocken schlucken.
Speziell der Umgang mit Farben in/für Zellen und damit verknüpfte Aktionen liegt OOo nicht
Was sich bei mir ersatzweise bewährt hat sind Hilfszellen in der Art wie es
komma4 hat geschrieben:füge eine Spalte "bezahlt" hinzu, schreibe dort ein "X", ein "ja" oder das Datum der Zahlung rein.
Dann kannst Du mit einer SUMMEWENN-Formel addieren.
Eine Färbung erhälst Du wieder über die bed. Formatierung.
beschrieben hat
speziell in diesem Fall ist die Aktion Zellen Excel 1. einfärben 2. zuordnen" nur umgedreht in OOo 1. zuordnen 2. einfärben
und wenn du die Hilfszellen erst einmal eingebaut hast ist der Zugriff auf die Zuordnung sogar schneller.
Außerdem kann man dann mit den HilfsZellen auch noch mehr anstellen zB
x = rot = geplant
g = grün = genehmigt
b = gelb = begonnen
a = blau = abgeschlossen
Mit OOo
muss man für einige Aktionen umdenken und nach neue Lösungswege suchen !
Aber dabei hilft dieses Forum meistens ausgesprochen schnell und sachkundig.
Re: Aufaddieren der rot gefärbten Zahlen in einer Spalte
Verfasst: Di, 06.10.2009 10:26
von Gert Seler
moin Andrel,
Deine Antwort an Jürgen :
vielen Dank für die Mühe, aber dein Skript bezieht sich ja nur auf einen kleine definierten Bereich.
Ich hab aber zig Spalten. Brauch was also allgemeines
Würdest Du uns denn endlich verraten, welchen Sinn & Zweck die Tabelle hat und was da berechnet werden soll ?
Antwort zum 2ten Satz :
Eine Tabelle in Ooo_Calc hat nun mal mindestens 256 Spalten oder mehr und ebenso 65.500 Zeilen.
Der Vorschlag von "komma4" "Neue Spalte "bezahlt" einfügen und "xen" ist vollkommen richtig.
Mit der Formel :
=WENN(UND(A2<>"";A2<0);A2;"")
werden Minusbeträge automatisch in die Spalte "Bezahlt" übernommen.
Ist auch übersichtlicher.
@ clag : Ist ein sehr guter Beitrag.
mfg
Gert
Re: Aufaddieren der rot gefärbten Zahlen in einer Spalte
Verfasst: Di, 06.10.2009 10:32
von komma4
Den letzten beiden Beiträgen ist nichts hinzuzufügen.
@clag: +1
@Gert: +1
Re: Aufaddieren der rot gefärbten Zahlen in einer Spalte
Verfasst: Di, 06.10.2009 11:02
von andrel1967
@clag
vielen Dank für den Beitrag. Arbeite seit über 15 Jahren intesiv mit Excel und werde
es wohl zukünftig auch weiter verwenden.
Eine einfache Funktion "addiere DIE Zahlen einer Spalte die ROTgefärbt sind" kann Calc wohl nicht
und der Tipp mit der Hiflsspalte ist ja nett, aber das ist Excel ausm vorigen Jahrhundert.
Nicht bös gemeint!
@Gert
bitte lies Dir den Beitrag 5 noch mal durch, ich denke da steht meine Intension deutlich drin, oder?
Eine Spalte mit Zellen "normaler" Farbe wird summiert in Zelle X. Wenn ein Wert in dieser Spalte
von mir ROT gemacht wird (sprich Zahlung getätigt),wird sie eben in der Zeile darunter summiert.
Somit habe ich den Überblick über die bereits bezahlten Gelder vs Plan. Und zwar in einer Spalte!
Einfach, übersichtlich und ich arbeite seit einigen Jahren mit diesem Sheet und habe wirklich keine
Lust die vergangenen Jahre mit Hiflsspalten zu versehen.
Die Frage war ja nur, kann Calc so n VBA von Excel, muss man es ein wenig umbauen, gibt´s n anderen Syntax usw.
Aber an Excel kommt Calc wahrscheinlich nicht ran.
Danke für die Hilfen
Ciao
@ Jürgen
vielen Dank für das Makro...ist ein sehr guter Ansatz und ich versuche es "allgemein" umzuschreiben, damit ich nicht für jedes Arbeitsblatt eine neue Funktion einfügen muss. Hat sehr geholfen!