Datum zum letzten Wert "Kauf" in Umsatzliste, wie?

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

Oblitor
**
Beiträge: 22
Registriert: Fr, 21.10.2005 18:37

Datum zum letzten Wert "Kauf" in Umsatzliste, wie?

Beitrag von Oblitor »

Hallo,

ich scheitere gerade an folgendem Problem.
Ich möchte aus dieser Tabelle (meines VL-Fonds) das Datum des letzten Kaufes auslesen.
Dabei sollen die Wiederanlagen/Thesaurierungen unberücksichtigt bleiben.
Ich scheitere daran dass der Wer "Kauf" mehrfach vorkommt.
Das Ergebnis der Funktion soll also das Datum 15.01.2004 sein.

Warum ich das brauche obwohl da nix mehr draufläuft? Berechtigte Frage ;-) - brauch das auch für laufende Sparraten um auf einer Übersichtsseite zu sehen, was auf dem aktuellsten Stand ist und wo ich noch was nachtragen muss.

Auch Sverweis mit eine Hilfsspalte davor bringt mich leider nicht zum Ziel.
Alles scheitert irgendwie an dem mehrfachem Auftreten des Wertes "Kauf".

Hat jemand ne Idee?
Merry X-Mas und 1000 Dank schonmal für Eure Hilfe

Christoph


PS: toller Link aber leider nur für einmalige Werte so brauchbar -> http://roehrenbacher.at/erc/faq/faq/F0021.htm

Code: Alles auswählen

A       B       C        D             E
Datum	Order	Betrag	Anteile	in Euro
				
17.12.01	Kauf	67,00 DM	0,677	34,26 €
17.12.01	Kauf	67,00 DM	0,677	34,26 €
17.12.01	Kauf	67,00 DM	0,677	34,26 €
17.12.01	Kauf	67,00 DM	0,677	34,26 €
15.01.02	Kauf	67,00 €	1,329	67,00 €
15.03.02	Kauf	38,00 €	0,725	38,00 €
15.04.02	Kauf	35,00 €	0,684	35,00 €
15.05.02	Kauf	35,00 €	0,693	35,00 €
17.06.02	Kauf	35,00 €	0,795	35,00 €
15.07.02	Kauf	35,00 €	0,858	35,00 €
15.08.02	Kauf	35,00 €	0,922	35,00 €
16.09.02	Kauf	35,00 €	0,959	35,00 €
15.10.02	Kauf	35,00 €	1,013	35,00 €
15.11.02	Kauf	35,00 €	0,964	35,00 €
15.11.02	Wiederanlage	4,15 €	0,114	4,15 €
16.12.02	Kauf	35,00 €	0,996	35,00 €
15.01.03	Kauf	35,00 €	0,981	35,00 €
17.02.03	Kauf	35,00 €	1,102	35,00 €
17.03.03	Kauf	35,00 €	1,206	35,00 €
15.04.03	Kauf	35,00 €	1,059	35,00 €
15.05.03	Kauf	35,00 €	1,054	35,00 €
17.06.03	Kauf	35,00 €	0,997	35,00 €
15.07.03	Kauf	35,00 €	0,963	35,00 €
15.08.03	Kauf	35,00 €	0,945	35,00 €
15.09.03	Kauf	35,00 €	0,940	35,00 €
15.10.03	Kauf	35,00 €	0,936	35,00 €
14.11.03	Wiederanlage	8,34 €	0,219	8,34 €
17.11.03	Kauf	35,00 €	0,935	35,00 €
12.12.03	Kauf	35,00 €	0,903	35,00 €
15.01.04	Kauf	35,00 €	0,865	35,00 €
12.11.04	Wiederanlage	2,89 €	0,068	2,89 €
11.11.05	Wiederanlage	5,05 €	0,101	5,05 €
Toxitom
********
Beiträge: 3769
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hey Oblitor,

interessante Aufgabenstellung...
OK, meine Lösung wäre ebenfalls mit einer Hilfsspalte:
Dort kommt die folgende Formel hinein (bezogen auf die erste Zeile, dann runterkopieren):

Code: Alles auswählen

=wenn(b3="Kauf";a3;0)
Jetzt sind die Datumsangaben der "Käufe" in der Spalte, und dort, wo nicht "Kauf" stand, steht jetzt 0 (Null).
Das letzte Datum erfährst du nun mit

Code: Alles auswählen

=max(F3:F200)
wobei F die Hilfsspalte ist. Das Ergebnis musst du natürlich als Datum formatieren :D

Viele Grüße
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Oblitor
**
Beiträge: 22
Registriert: Fr, 21.10.2005 18:37

Beitrag von Oblitor »

Hallo Thomas,

danke für Deine prompte Hilfe :D, hab grade selbst vor dem Lesen des Forums praktisch das selbe gemacht (schadet nicht, selber denken schult ;-))
Wobei ich die Funktion DBMAX verwendet habe, da ist dein Vorschlag mit MAX schon schöner und einfacher *gleichanpass* :D

Code: Alles auswählen

IN A3 (neue Spalte A):
=WENN(C3="Kauf";B3;"")
was mir "unschöne" Nullwerte gleich im Keim erstickt.


Ausserdem dann in I13 (auf allen Blättern an dieser Position zwecks leichteren Handlings)

Code: Alles auswählen

=MAX(A1:A65536)
auch noch brauchbar für den unwahrscheinlichen Fall, dass ich mehrere hundert Jahre alt werden sollte *lach*.

Selbiges habe ich auch noch für "vermögenswirksame Leistung" für die Umsätze meines hauptsächlich so wachsenden Bausparers gemacht ;-)

Das ganze in ein Übersichtsblatt. Das wird dann von der - leider noch kleinen - Vermögensaufstellung.ods ausgelesen und auch das Datum mit berücksichtigt für noch laufende Sachen :-)


Eine Funktion dafür wär natürlich ein Traum, höchster Wert einer Spalte bei gleichzeitigem Wert einer anderen Spalte in der gleichen Zeile.
Ich mag keine Hilfsspalten ;-) - deswegen werden die rigoros ausgeblendet *hehe*


Vielen Dank nochmal und schöne Feiertage noch, auch an alle "Mitleser"
Christoph
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Beitrag von Stephan »

Eine Funktion dafür wär natürlich ein Traum, höchster Wert einer Spalte bei gleichzeitigem Wert einer anderen Spalte in der gleichen Zeile.
Das hier sollte für Deine Bedingungen als benutzerdfinierte Funktion funktionieren:

Code: Alles auswählen

Function max_zs(tabellen_name as string, wert_Spalte as string, _
 kriterium_spalte as string, kriterium as string)
 
Doc = ThisComponent
oSheet = Doc.Sheets().getByName(tabellen_name)
oCellCursor = oSheet.createCursor() 
oCellCursor.GotoEndOfUsedArea(True) 
letzte_Zeile = oCellCursor.getRangeAddress.EndRow
For i=1 to letzte_Zeile+1
adr = TRIM(wert_Spalte) & TRIM(STR(i))
adr_vergl =  TRIM(kriterium_spalte) & TRIM(STR(i))
neu_wert = oSheet.getCellRangeByName(adr).Value
vergl = oSheet.getCellRangeByName(adr_vergl).String
If neu_wert > max_wert Then
if vergl = kriterium Then max_wert = neu_wert
End if
Next
max_zs = max_wert
End Function
und aufrufen mit:

=MAX_ZS(a;b;c;d)

wobei:
a...Name der Tabelle
b...Name der Spalte mit den Werten wo das Maximun gesuchtist
c...Name der Spalte mit den Kriteriumswerten
d...das Kriterium

z.B.:
=MAX_ZS("Tabelle1";"A";"B";"Kauf")



Gruß
Stephan
Oblitor
**
Beiträge: 22
Registriert: Fr, 21.10.2005 18:37

Beitrag von Oblitor »

Hallo Stephan,

das sieht ja toll aus :D *das nicht versteh* ;-)

Danke Dir, werds am Wochenende jetz mal ausprobieren.

Grüsse & Guten Rutsch
Christoph
Antworten