Anzeige
Archiv - Navigation
1472to1476
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Liste mit Währungspositionen addieren

Liste mit Währungspositionen addieren
08.02.2016 21:22:02
Steffen
Hallo zusammen,
ich habe mich gerade ganz frisch angemeldet, da ich mit meinem Latein und Google Suche erstmal nicht weiter gekommen bin.
Vielleicht habt Ihr ja einen Geistesblitz.
Ich habe eine Tabelle mit Umsätzen in verschiedenen Währungen und Kategorien. Z.B.
Pos Kategorie Währung Betrag
1 Effekt1 EUR 100
2 Effekt1 USD 100
3 Effekt2 EUR 200
4 Effekt2 CNY 500
Wechselkurse zu EUR:
EUR 1,0
USD 1,1
CNY 7,0
Das Ergebnis soll sein:
Effekt1 190 (100+90(100/1,1))
Effekt2 271 (200+71(500/7,0))
Ich dachte zuerst an eine Summenproduktformel. Aber damit bin ich nicht weitergekommen.
Kann mir jemand helfen? LG

17
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Bei 1er Spalte könnte das so aussehen, ...
09.02.2016 04:01:49
Luc:-?
…Steffen:
 ABCDEFGHIJKL
21Wechselkurse zu EUR:PosKategorieWährungBetragBetrag in €KategorieInsgesamtInsgesamtInsgesamtInsgesamtInsgesamt
22EUR 1,01Effekt1EUR100100Effekt1191191191191191
23USD 1,12Effekt1USD10091KategorieInsgesamt  191191
24CNY 7,03Effekt2EUR200200Effekt2271271271271271
25 4Effekt2CNY50071    271271
26 F22:F25: {=E22:E25/SVERWEIS(D22:D25;VSplit(A22:A24;;1);2;0)}G22[;G24]:=C22H22[;H24]:=DBSUMME(C21:F25;F21;G21:G22)
27 I22[;I24]:=SUMMENPRODUKT((C$22:C$25=G22)*F$22:F$25)K22:K23[;K24:K25]: {=SUMMENPRODUKT((C$22:C$25=G22)*E$22:E$25/SVERWEIS(D$22:D$25;VSplit(A$22:A$24;;1);2;0))}
28 J22[;J24]:=AggregateXk(-9;6;(C$22:C$25=G22)*F$22:F$25)L22:L23[;L24:L25]: {=AggregateXk(9;6;(C$22:C$25=G22)*E$22:E$25/SVERWEIS(D$22:D$25;VSplit(A$22:A$24;;1);2;0))}
Im Bsp habe ich mehrere Berechnungsvarianten vereinigt:
1. Eine Lösung mit der DatenbankFkt DBSUMME, die eine Hilfsspalte für die Umrechnung in € und die separate Angabe der ErmittlungsKriterien erfordert.
2. Eine Lösung mit SUMMENPRODUKT ebenfalls auf der Basis der Hilfsspalte.
3. Analog dazu eine mit einer UDF, die weitgehend der neuen Fkt AGGREGAT entspricht, nur dass sie generell auch Datenfelder verarbeiten kann (eine Lösung mit AGGREGAT wäre unnötig umständlich!).
4. Eine Lösung mit SUMMENPRODUKT so wie du sie dir wahrscheinlich vorgestellt hast - ohne Hilfsspalte. Wenn man die Fml der Hilfsspalte in die ProduktsummenFml integriert, entsteht allerdings eine quasi-einzellige MatrixFml, d.h., eine Fml, die nicht nur die MatrixFml-Form, sondern mindestens auch 2 ausgewählte Zellen benötigt, damit das Ergebnis auch richtig berechnet wird. Leider hat man dann auch 2 gleiche Ergebnisse. Das überflüssige 2. (hier in rot) könnte man aber auch in einer VerbundZelle über beide Zellen verstecken. Diese muss man aber mit dem FormatPinsel durch Übertragung des Formats einer Muster-VerbundZelle erzeugen! Fml und VerbundZelle können sowohl vertikal (wie hier) als auch horizontal ausgerichtet sein.
5. Das Analogon zu 4. in der Art von 3.
Zellen mit blauer (bzw roter) Schrift beziehen sich auf quasi-1zellige MatrixFmln in 2er VerbundZellen, die außerdem noch 1-2 UDFs (benutzerdefinierte Fktt) enthalten.
Türkisfarbene Zellen beziehen sich ebenfalls auf Fmln, die UDFs enthalten. In der Hilfs- und den beiden letzten Spalten wäre das die UDF VSplit, in den übrigen (zusätzlich) die UDF AggregateXk. Der PgmCode beider UDFs ist leicht im Archiv zu finden.
Morrn, Luc :-?
Besser informiert mit …

Anzeige
AW: Bei 1er Spalte könnte das so aussehen, ...
09.02.2016 22:34:45
Steffen
Hi Luc,
ersteinmal großen Dank für Deine Hilfe und Deine großen Mühen. Du hast Recht, die Beträge stehen in einer Spalte, in der nächsten dann die Währungscodes.
In einer zweiten Tabelle sind die Umrechnungskurse.
Da wir 12 Monate x 3 Spalten umrechnen müssen, würden wir gerne auf Hilfsspalten verzichten. Es wäre toll wenn das in einer Formel geht.
Ich habe mal ein Beispiel in dieser Datei abgebildet:
https://www.herber.de/bbs/user/103413.xls
Kannst Du mir mal die Formel nennen für die Zelle G9 oder eine Datei mit den funktionierenden Formeln hochladen? Das wäre ganz toll!

Anzeige
Ich lade im Laufe des Tages die Datei hoch, ...
10.02.2016 02:46:43
Luc:-?
…Steffen,
ohne monatliche Hilfsspalte bei den Primärdaten, aber mit 2 Spalten pro Monat und Ergebnis, die aussehen wie eine (Datei kommt als .xlsx!).
Übrigens hattest du mich falsch verstanden. Ich meinte die UmrechnungsTab. Da die auch getrennte Spalten für Text und Wert hat, kann ich auf UDF-Einsatz verzichten. Die Berechnungsfml ändert sich zwar etwas, aber der quasi-1zellige MatrixFml-Effekt bleibt (deshalb die 2 Ergebnisspalten).
Ich werde noch neopa hierauf aufmerksam machen, weil ich dabei ein so ungewohntes INDEX-Verhalten entdeckt habe.
Morrn, Luc :-?

Anzeige
Hier ist sie nun, ...
10.02.2016 10:48:44
Luc:-?
…Steffen;
allerdings habe ich die 3 Tabellen auch auf 3 Blätter verteilt, weil das darstellungsgünstiger war:
https://www.herber.de/bbs/user/103426.xlsx
Hinweise auf Blatt3.
Viel Erfolg! Luc :-?

AW: Ich lade im Laufe des Tages die Datei hoch, ...
10.02.2016 11:03:39
Daniel
Hi
passend für deine Beispieldatei.
folgende Formel in G9:
=SUMMENPRODUKT(($A$3:$A$6=$F9)*1;C$3:C$6/N(INDIREKT(ADRESSE(VERGLEICH($B$3:$B$6;$G$3:$G$5;0) +ZEILE($G$2);SPALTE(H$2))))) 
das ist eine Matrixformel, die Eingabe muss immer mit STRG+SHIFT+ENTER abgeschlossen werden.
Danach kannst du die Formel nach G9:H10 kopieren.
https://www.herber.de/bbs/user/103427.xls
Gruß Daniel

Anzeige
AW: Bei 1er Spalte könnte das so aussehen, ...
10.02.2016 11:04:15
Daniel
Hi
passend für deine Beispieldatei.
folgende Formel in G9:
=SUMMENPRODUKT(($A$3:$A$6=$F9)*1;C$3:C$6/N(INDIREKT(ADRESSE(VERGLEICH($B$3:$B$6;$G$3:$G$5;0) +ZEILE($G$2);SPALTE(H$2))))) 
das ist eine Matrixformel, die Eingabe muss immer mit STRG+SHIFT+ENTER abgeschlossen werden.
Danach kannst du die Formel nach G9:H10 kopieren.
https://www.herber.de/bbs/user/103427.xls

Warum gleich 2mal, ...
10.02.2016 11:11:50
Luc:-?
…Daniel;
hast du Angst, dass deine späte Hilfe-Entscheidung übersehen wdn könnte…? :-]
Luc :-?

Anzeige
AW: Warum gleich 2mal, ...
10.02.2016 11:22:40
Daniel
nö, ich hatte sie erst nur falsch Platziert.
Baumstruktur, du verstehtst?
mal ne echte Frage:
warum brauchst du für jeden Monat zwei Spalten?
Gruß Daniel

Weil ich einen besonderen Typ von MxFml ...
10.02.2016 11:37:50
MxFml
…verwende, der das erfordert, Daniel;
im Ggsatz zu deiner Fml ist meine auch nicht volatil! Ansonsten kann man in solchen Fällen oft mit INDIREKT arbeiten, um dass zu umgehen, aber auch nicht immer. Das ändert aber nichts daran, dass es diesen MxFml-Typ gibt, der so eingesetzt, auch ein richtiges Ergebnis liefert. Und das ist nunmal eine meiner Xl-Entdeckungen… ;-]
Gruß, Luc :-?

AW: Weil ich einen besonderen Typ von MxFml ...
10.02.2016 12:12:22
MxFml
Und möchstest du vielleicht ein paar erklärenden Worte zu seiner speziellen Matrixformel sagen?
ich meine nur so für den Fall, dass mal jemand zu einem ähnlichen Problem das Archiv bemüht, auf deinen Beitrag stösst und dann natürlich auch verstehen möchte, was da passiert?
ansonsten solltest du die Formeln vielleicht noch so anpassen, dass sie auch dann noch funktionieren, wenn man in PrimDat einzelne Zeilen hinzu fügt oder löscht.
Wenn man das macht, gibt's bei dir plötzlich nur noch leere Zellen.
Gruß Daniel

Anzeige
Was man machen muss, habe ich in der Datei ...
11.02.2016 02:27:17
Luc:-?
…erklärt, was dir ja wohl aufgefallen sein wird, Daniel;
ansonsten könntest du ja die Recherche bemühen oder Werner fragen, wo mehr dazu steht*…
Du hattest deine Chance, dich aber erst dann (2 Tage später!) hierfür interessiert, als ich (m)eine KomplettLösung für (s)eine BspDatei hochgeladen hatte.
* Solche Diskussionen interessieren dich aber augenscheinlich weniger als kleinliches WortGeplänkel…
Luc :-?

AW: Was man machen muss, habe ich in der Datei ...
11.02.2016 06:46:15
Steffen
Hi,
doch nicht streiten hier :-). Die Formel sieht super aus :-). Funktioniert auch, herzlichen Dank.
Eine Frage noch, muss eine Indirektformel dabei sein? Wir haben die Erfahrung gemacht, dass es sehr langsam wird dadurch.
LG Steffen

Anzeige
AW: Was man machen muss, habe ich in der Datei ...
11.02.2016 07:01:49
Steffen
Hi,
habe gerade gesehen, dass Du ja noch die Version mit den drei Tabellenblättern hochgeladen hast. Die gefällt mir natürlich deutlich besser, da dort keine indirekt Formel drin ist.
Allerdings verstehe ich nicht, warum im dritten Tabellenblatt immer zwei Spalten pro Monat benötigt werden? In unserer Tabelle wird direkt in der Spalte über den Originalwährungsbeträgen in EUR umgerechet. D.h. aus 5 Datenzeilen mit verschiedenen Währungen mit Effekt 1-3 werden beispw. drei Datenzeilen mit EUR Effekt 1-3.
Gruß S

Wie in eurer Tabelle...? Entsprach deine ...
11.02.2016 14:42:55
Luc:-?
…BspDatei nicht eurer Realität, Steffen?
Das wäre dann recht kontraproduktiv gewesen, weil es Mehrarbeit bedeutet!
Zu INDIREKT: Die Datei wird bei sehr vielen Berechnungen langsam, weil diese Fkt volatil ist, d.h., sie wird bei jeder Änderung im Blatt (bei AutoKalkulationsModus) sicherheitshalber neu berechnet, weil Xl auf Grund des AdressTextes bzw Verweises auf einen solchen nicht unmittelbar feststellen kann, ob sich an den QuellDaten der Fkt etwas geändert hat. Deshalb zeigt der FmlAssi auch kein Ergebnis, sondern nur Veränderlich an.
Zu 2 Spalten: Die Fml, die ich benutze, ist eine Sonderform der MatrixFmln zwischen sog ein- und normalen mehrzelligen. Die ZwischenErgebnisMatrix wird zwar immer gebildet, aber was davon genutzt wird, hängt oft von der Anzahl der verwendeten Zellen ab. Deshalb sind in bestimmten Fällen keine 1zelligen MatrixFmln möglich, obwohl nur ein Ergebnis erwartet wird. Bei entsprechender Fml­Gestaltung kann man aber erreichen, dass schon bei Auswahl von 2 Zellen die ganze Matrix für die Berechnung benutzt wird. Das ist auch bei INDEX-Verwendung möglich, wenn darauf eine weitere Operation angewendet wird, zB in einfachster Form in der Art:
{=SUMME(INDEX({1;2;3};ZEILE(1:3))+0*ZEILE(1:3))}
Das ist auch bei der von mir in der BspDatei verwendeten Fml so, nur wdn dann auch 2 Spalten pro Monat benötigt. In beiden Spalten stehen dann identische Ergebnisse. Wenn man die 2.Spalten nicht generell ausblenden will, was ebenfalls möglich wäre, kann man auch Verbund­Zellen auf die angegebene Art benutzen, die dann auch MatrixFmln aufnehmen können, was MS offen­sichtlich nicht angedacht hatte (vgl Fehler­Meldungen!). Man könnte natürlich auch 2 Zeilen verwenden. Wenn man dann statt mit Verbund­Zellen mit ausgeblendeten Zeilen arbeiten würde, könnte man Spalten­Summen auch mit TEILERGEBNIS(109;…) bzw AGGREGAT bilden.
Hierzu habe ich schon des öfteren geschrieben, zuletzt hier.
Luc :-?

Anzeige
AW: für mich eine MATRIXfunktion(alität)sformel...
10.02.2016 19:11:54
...
Hallo Daniel,
... denn der von Dir als zwingend angegebene Matrixformelabschluss wird hier nicht wirklich benötigt (auch kann die 1 und das Semikolon nach der ersten Bedingungsmatrix weg gelassen werden).
Gruß Werner
.. , - ...

AW: Die einfachste Lösung
11.02.2016 17:23:41
Daniel
... dürfte hier dann doch die Nutzung einer zusätzlichen Hilfstabelle ein, in welcher du per SVerweis die Landeswährungswerte in Euro normierst und diese dann auswertest.
das macht den geringsten aufwand, weil du einfach die Originaltabelle kopieren und dann die Umrechnungsformel einsetzen kannst.
Auch der Rechenaufwand für Excel dürfte sich gegenüber einer Matrixformellösung nicht signifikant erhöhen, da Excel in der Matrixformel im Prinzip die gleichen Rechenschritte auch ausführen muss wie hier in der Tabelle.
(im Prinzip lässt sich der Rechenaufwand in der Tabelle noch weiter durch zusätzliche Hilfsspalten reduzieren, da Hilfsspalten in Formeln wie Variablen verwendet werden können und so die dort enthaltenen Berechnungen nur 1x ausgeführt werden müssen, während sonst diese Werte bei jeder Verwendung neu berechnet werden müssen.)
eine Matrixformellösung hat hier das Problem, dass sie im Prinzip zwei eigenständige Suchschleifen ineinander schachteln muss und das funktioniert noch in Excel noch nicht so richtig, weshalb selbst Koryphäen wie Luc nur Lösungen mit Umwegen einfallen.
https://www.herber.de/bbs/user/103474.xls
Gruß Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige