Seite 1 von 1
Bedingte Aufsummierung von Spalten
Verfasst: Do, 18.03.2004 14:13
von Sliego
Hallo Zusammen,
folgendes Problem würde ich gerne mit Calc lösen, komme aber da einfach nicht weiter:
Hier die Spalten der Tabelle: lfd. Nr. | Datum | Betrag | etc.
Ich möchte nur die Zahlen in der Spalte "Betrag" aufsummieren, wenn in der Spalte "Datum" der (>=1 und <=3), (>=4 und <=6), (>=7 und <=9) und (>=10 und <=12) ist. Das Ergebis wären dann vier Summen des 1., 2., 3. und des 4. Quartals.
Probiert habe ich es mit SUMMEWENN(), aber das klappt irgendwie nicht.
Die Anzahl der Zeilen der Tabelle variiert, kann aber nicht größer als 500 sein. Sortieren kann ich die Tabelle auch nicht, da sonst die laufenden Nummern nicht mehr untereinander stehen.
Das ganze soll eine einfache G+V-Rechnung darstellen um die Vorsteuer innerhalb eines Quartals zu ermitteln.
Hat jemand eine Idee?
Vielen Dank & Grüße
Thomas
Verfasst: Fr, 19.03.2004 08:47
von Toxitom
Hallo Thomas,
diese aufgaben löst du einfach mit den Funktionen Datenbank.
Schau die mal die Hilfe an unter der Funktion =dbsumme() .
Dann musst du nur noch entsprechenden Kriterienbereiche ausweisen (am geschicktesten oberhalb der Liste) - fertig.
Wenn du nicht weiterkommst, nochmal posten.
Gruss
Thomas
Verfasst: Sa, 20.03.2004 18:19
von Toxitom
Hallo Thomas,
wieso Hilfszellen? Wenn du eine Tabelle hast
| a | b | c | d |
1 lfdnr Datum Betrag
2 1 02.01.04 35,-
...
dann legst du dir einen kriterienbereich an:
| y | z |.
1 | Datum | Datum |
2| >01.01.04 | <31.03.04
dann lautet die Formel: =dbsumme(a1:c500; c1; y1:z2)
Das ist doch in einer Zeile, ohne Hilfsfunktionen oder Spalten?
Wo liegt das Problem?
Gruss
Thomas
Verfasst: Sa, 20.03.2004 18:36
von Lib
Hallo Thomas,
hast Du eine Ahnung, wozu der mittlere Parameter gut ist?
Ich bekomme immer eine Error-Meldung, auch z.B. bei DBANZAHL,
und ich frage mich, ob es evtl. mit dem Parameter zu tun hat. Im Hilfetext ist hier statt eines Feldes ein Bereich angegeben (bringt mir aber den gleichen Fehler),
erklärt wird:
"Datenbankfeld gibt das als weiteren Bezug verwendete Datenbankfeld an, sofern Bezüge in der Datenbankfunktion zulässig sind. "
das verstehe ich überhaupt nicht.
Gruss, Lib
Verfasst: So, 21.03.2004 10:24
von Toxitom
Hallo Lib,
hast Du eine Ahnung, wozu der mittlere Parameter gut ist?
ja, hab ich. Der erste parameter bestimmt die Datenbank, der dritte den Kriterienbereich, der zweite das Feld, das ausgewertet werden.
Im Beispiel von dbsumme das Feld, welches addiert werden soll.
Im Beispiel von dbanzahl, das Feld, das gezählt werden soll. dbanzahl zählt ja nur die Felder (Datensätze), die Zahlen enthalten.
Das man einen Bereich dafür nehmen kann,kenn ich jetzt nicht, hab es aber auch noch nicht ausprobiert.
Die meisten Fehlermeldungen entstehen durch ungeschickt gewählte Feldnamen und unterschiedlich geschriebene Feldnamen bei Datenbank und Kriterienbereich.
Die Grundlagen von Feldnahmen sind recht einfach: keine Sonderzeichen, keine Leerzeichen, keine Zahl am anfang, keine Schlüsselwörter.
OOo ist auf der anderen Seite sehr grosszügig. So werden ungünstige Feldnamen nicht bemängelt, intern aber brutal abgeschnitten am ersten, nicht gültigen Zeichen.
So wird zum Beispiel "dat 1" und "dat 2" intern jeweils zum Feldnamen "dat" und führt dann natürlich sofort zum Fehler.
Gruss
Thomas
Verfasst: So, 21.03.2004 12:53
von Lib
Hallo Thomas
Danke, hab endlich etwas begriffen, an dem ich schon lang hrumdoktere.
Das mit dem Bereich scheint ein Fehler im Hilfetext zu sein.Ich habe bisher immer nur DBANZAHL benutzt und dabei manchmal unerklärliche oder eben gar keine Ergebnisse bekommen. Ich bin gar nicht draufgekommen, dass ich mich mit dem mittleren Parameter auf ein bestimmtes Feld rsp. die zugehörige Spalte referenzieren könnte, da sich der Kriterienbereich ja auf mehrere Spalten beziehen kann.
Man will ja einfach die Gesamtanzahl Zeilen, die übrigbleibt, wenn die Kriterien aus allen auszuwertenden Spalten erfüllt sind. Es spielt hier auch gar keine Rolle, welches Feld aus den Spaltentiteln Du einsetzt, bloss ein Bereich darf es (wie eben im Hilfe-Beispiel) nicht sein.
Eigentlich könnte man wahrscheinlich den mittleren Parameter bei DBANZAHL weglassen, wenn SCALC das zulassen würde.
Bei DBSUMME ist es logischer, da muss das Programm ja wissen, welche Spalte summiert werden soll. Ein Bereich geht nicht, jedenfalls nach meinen Tests. Da müsste man dann halt jeweils mehrere DBSUMME-Befehle (einen pro Spalte) addieren.
Tschüss, Lib
Verfasst: So, 21.03.2004 13:41
von Toxitom
Hallo Lib,
Eigentlich könnte man wahrscheinlich den mittleren Parameter bei DBANZAHL weglassen, wenn SCALC das zulassen würde.
Nein, das wäre nicht möglich. Der mittlere Parameter hat schon noch eine Funktion: Auch wenn die Kriterien alle erfüllt wären, und im Feld (mittlerer Parameter) entweder keine Zahl oder gar nichts drin steht, dann wird die Zeile (Datensatz) nicht gezählt! -> bei dbanzahl.
Das ist also quasi noch ein dritter Kriterienbereich. Ich glaube, das kommt noch aus den Zeiten, als "echte" Datenbanken in Calc-Tabellen abgebildet wurden. Da gab es ja immer einen nummerischen Key, der beim Löschen des Datensatzes entweder eine Löschmarkierung erhilt oder tatsächlich gelöscht wurde. Der Datensatz selbst bleibt aber in der Liste erhalten.
Dann brauchst du diesen mittleren Parameter!
Gruss
Thomas
Bedingte Aufsummierung von Spalten
Verfasst: So, 21.03.2004 16:18
von Sliego
Hallo Zusammen,
das ist ja alles schön ung gut, aber eine Lösung für mein Problem habe ich leider immer noch nicht ...
Ich bin für jeden Tip wirklich sehr dankbar ...
Viele Grüße
Thomas
Verfasst: So, 21.03.2004 16:37
von Toxitom
Hallo Thomas,
das ist ja alles schön ung gut, aber eine Lösung für mein Problem habe ich leider immer noch nicht ..
Dann lies doch mal die ersten Quotes. Da steht doch die Lösung
Oder was fehlt dir noch?
Gruss
Thomas
Verfasst: So, 21.03.2004 17:35
von Toxitom
Hallo Thomas,
noch ein Tipp: ruf mal die Hilfe von Calc auf, dann such nach der Beschreibung von "SUMME", dort steht dein Problem übrigens exakt beschrieben mit Lösung.
Benutzt wird dort die Matrix-Summierung.
Gruss
Thomas
Verfasst: So, 21.03.2004 18:56
von Sliego
Hi Thomas,
sorry, ich habe Deinen Beitrag irgendwie übersehen ...

- ist mir wirklich peinlich!
Probiere ich gleich mal aus und melde mich noch dann!
Vielen Dank & einen schönen Sonntag noch,
Thomas
Verfasst: So, 21.03.2004 19:06
von Sliego
Hi Thomas
Toxitom hat geschrieben:
noch ein Tipp: ruf mal die Hilfe von Calc auf, dann such nach der Beschreibung von "SUMME", dort steht dein Problem übrigens exakt beschrieben mit Lösung.
Benutzt wird dort die Matrix-Summierung.
Ohh jaaa. Sieht gut aus.
Matrix mit Summe - da wird einem knallhart vor Augen geführt, wo die Lücken sind ...
Vielen Dank & viele Grüße
Thomas