Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
968to972
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
968to972
968to972
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Kostenermittlung über 2 verschiedene Schlüssel

Kostenermittlung über 2 verschiedene Schlüssel
16.04.2008 19:35:00
Ferenz
Hallo Allerseits,
ich möchte gern die Gesamt-Belastung (blau markierte Zellen) je Investitions-Nummer ermitteln. Die Ermittelung der Kosten erstreckt sich über 3 Tabellen mit 2 verschiedenen Schlüsseln.
In der ersten Tabelle sind die verschiedenen Investitions-Nummern mit einem entsprechenden ASchlüssel. (Siehe Abb.)
Tabelle: Bestellung


Anhand des ASchlüssels soll er in der 2ten Tabelle zugehörige BSchlüssel identifizieren. Der ASchlüssel liegt in der Spalte A "PBestellungID". (siehe Abb.)
Tabelle: Bestellposition


Anhand der identifzierten BSchlüssel je ASchlüssel, die in der Spalte A "PBestellpositionID" liegt, soll nun die Gesamt-Belastung ermittelt werden. (Siehe Abb.) Dann hätte ich die Gesamt-Belastung je Investitionsnummer.
Tabelle: Belastung


Ich habe schon mit Sverweis und Index rumhantiert, aber ich bleibe immer an der Zuordnung des ASchlüsses zum BSchlüssel hängen.
Weiß jemand eine Lösung.
Wäre sehr erleichert.
PS: Hoffe ich habe es verständlich erklären können und ist nicht zu sehr umfangreich geworden.
Gruß
Ferenz

19
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kostenermittlung über 2 verschiedene Schlüssel
16.04.2008 19:45:48
Uwe
Hi Ferenz,
also für mich sind das zwei ineinanderverschachtelte SVERWEISe.
Du ermittelts mit einam SVERWEIS den B-Schlüssel und nimmst diesen Wert dann als ersten Parameter in dem SVERWEIS mit dem Du den Bedarf ermittelst. Also jetzt mal vom Prinzip her, ohne Deine Datei nachzubauen:
=SVERWEIS(SVERWEIS(E1;A1:B30;2;0);C13:D78;2;0)
Wenn das nicht klar ist, lade mal ein Beispiel 'rauf.
Gruß
Uwe
(:o)

AW: Kostenermittlung über 2 verschiedene Schlüssel
16.04.2008 20:23:00
Erich
Hallo Ferenz,
probier mal
 ABCD
1PBestellungIDOrtInvestitions.Nr.Gesamtkosten
2A3###234H###5123.456250
3Y3###123D###3123.45650
4D2###324K###7789.012700

Formeln der Tabelle
ZelleFormel
D2=SVERWEIS(SVERWEIS(A2;Bestellposition!A:B;2;0); Belastung!A:B;2;0)
D3=SVERWEIS(SVERWEIS(A3;Bestellposition!A:B;2;0); Belastung!A:B;2;0)

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: Kostenermittlung über 2 verschiedene Schlüssel
16.04.2008 20:46:21
Ferenz
Hallo Uwe und Erich,
ich bin mir nicht sicher ob dieser Sverweis stimmt, da er ja eine absteigende Reihenfolge benötigt und die Daten sind bei mir nicht sortiert.
Dem ASchlüssel bspw. Y3###123D### werden 3 BSchlüssel: D4###456J### ; D6###421J### ; F8###421J### in der 2.ten Tabelle zugeordnet.
In der 3 Abb.: wird dem BSchlüssel D4###456J### die Belastung 50 ; 150 ; 300 , somit 500 zugeordnet.
D6###421J### die Belastung 200 ; 400 , somit 600 zugeordnet.
F8###421J### die Belastung 100 ; 500 , somit 600 zugeordnet.
In der Summe für die BSchlüssel ergibt sich ein Wert von 1700
Deine Formel gibt nur den Wert von 50 heraus. Das ist der erste Wert den er findet und hört dann auch schon auf zu suchen und zu addieren.
Da muss es einen anderen Trick geben, oder?
@Uwe wie lade ich eine Datei hoch?
Gruß Ferenz

Anzeige
AW: Kostenermittlung über 2 verschiedene Schlüssel
16.04.2008 20:45:00
IngoG
Hallo Ferenz,
wenn ich es richtig gesehen habe, suchst Du die Gesamtbelastung und das heisst, die summe aller werte mit dem selben B-Schlüssel...
Dann brauchst Du wahrscheinlich folgende Formel:

=summenprodukt((Belastung!$A$2:$A$1000=sverweis($a2;Bestellposition!$A$2:$B$500;2;0)) *Belastung!$B$2:$B$1000) 


Vielleicht hilft Dir das ja weiter
Gruß Ingo
PS eine Rückmeldung wäre nett...

AW: Kostenermittlung über 2 verschiedene Schlüssel
16.04.2008 21:02:00
Ferenz
Hallo IngoG,
Nicht ganz. Ich suche die Gesamtbelastung aller BSchlüssel, die bspw. zum ASchlüssel Y3###123D### gehören.
Deine Formel gibt den Wert 500 aus für den BSchlüssel D4###456J###, der nur ein BSchlüssel von dreien ist des zugehörigen ASchlüssels Y3###123D###. Die entsprechende Zuordnung findest Du in der Tabelle Bestellposition (2.te Abb).
Der Wert 1700 sollte für den ASchlüssel Y3###123D### heraus kommen, wie ich in der vorigen Antwort bereits erläutert habe.
Scheint doch etwas knifflig zu sein.
Gruß Ferenz

Anzeige
AW: Kostenermittlung über 2 verschiedene Schlüssel
16.04.2008 21:37:29
Renee
Hi Ferenz,
Muss frau das Ganze nachbauen? Kannste nicht einmal eine Beispielmappe mit den Daten hochladen?
GreetZ Renée

AW: Kostenermittlung über 2 verschiedene Schlüssel
16.04.2008 21:44:11
Ferenz
Guten Abend Reneé,
eine Frau natürlich nicht.
Anbei die Datei: https://www.herber.de/bbs/user/51627.xls
Hoffe das funzt, da es das erste mal ist, dass ich eine Datei hier hochlade.
Viel Erfolg
Gruß Ferenz

AW: Kostenermittlung über 2 verschiedene Schlüssel
17.04.2008 01:45:32
Erich
Hi Ferenz,
wenn auch im Blatt Bestellposition Formeln stehen dürfen:
Bestellposition

 ABC
1PBestellungIDPBestellpositionIDBestellwert
2D2###324K###A6###456D###1800
3Y3###123D###D4###456J###500
4Y3###123D###D6###421J###600
5D2###324K###E3###456M###1450
6Y3###123D###F8###421J###600
7A3###234H###G3###345F###600
8A3###234H###L7###365U###1050
9D2###324K###T5###496I###1700
10A3###234H###W9###542P###1200

Formeln der Tabelle
ZelleFormel
C2=SUMMEWENN(Belastung!A:A;B2;Belastung!B:B)
C3=SUMMEWENN(Belastung!A:A;B3;Belastung!B:B)


Bestellung

 ABCD
1PBestellungIDOrtInvestitions.Nr.Gesamtkosten
2A3###234H###5123.4562850
3Y3###123D###3123.4561700
4D2###324K###7789.0124950

Formeln der Tabelle
ZelleFormel
D2=SUMMEWENN(Bestellposition!A:A;A2;Bestellposition!C:C)
D3=SUMMEWENN(Bestellposition!A:A;A3;Bestellposition!C:C)

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: Kostenermittlung über 2 verschiedene Schlüssel
17.04.2008 19:26:08
Ferenz
Hallo Erich,
ich lese alle Daten durch eine MS-Query-Abfrage von unserem abteilungsspezifischen Programm heraus. Die Daten umfassen mehrere 10.000 Zeilen. Ich müsste demnach die Formel auf die gesamte Spalte bis zur letzten Zeile des Arbeitsblattes eingeben. Hinzukommt, dass diese Abfrage nur eine Maschine betrifft und wir haben in einem Projekt 80 Maschinen. Auch jetzt schon braucht Excel sehr lange für die Berechnung.
Deshalb geht das nicht.
Der Ansatz ist aber gut. Deine beiden Formeln müsste man irgendwie in eine Matrixformel zusammen fassen. Nur wie?
Gruß
Ferenz

Anzeige
AW: Kostenermittlung über 2 verschiedene Schlüssel
17.04.2008 20:32:22
Erich
Hi Ferenz,
so ganz kann ich dir da nicht folgen.
"Ich müsste demnach die Formel auf die gesamte Spalte bis zur letzten Zeile des Arbeitsblattes eingeben."
Das meinst du nicht wirklich, oder?
Es ist doch wohl kein Problem, die Formel einmal einzugeben und dann bis zur letzten belegten Zeile
im Blatt "Bestellposition" runterzukopieren? (notfalls per VBA)
Die "Verachtzigfachung" (ich meine die 80 Maschinen) weist für mich
eher in Richtung Datenbank, Access oder MySQL vielleicht.
Was die Rechenzeit angeht: Ich bezweifle, dass eine einzige Matrixformel
(genauer: eine pro Zeile im Blatt "Bestellung") schneller wäre.
Damit das testbar wäre, müsste allerdings erst mal jemand diese Matrixformel hinschreiben...
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: Kostenermittlung über 2 verschiedene Schlüssel
17.04.2008 20:46:26
Ferenz
Hallo Erich,
mit Access und SQL kenne ich mich überhaupt nicht aus. Ich bin schon froh, dass ich die Daten per MS-Query heraus lesen kann. Ich wollte die Datensätze eigentlich in MS-Query verknüpfen, aber der Programmierer hat mir eine SQL geschickt. Habe dann einen gefragt der sich damit auskennt und festgestellt, dass die SQL selbst nicht zu 100% korrekt ist. Die Verknüpfungen der Tabellen hat er dann analysiert.
Ich werde die Formel morgen anwenden und die Bestätigung Deiner Aussage bezüglich der Rechenzeit vor Augen halten lassen.
So eine Matrixformel wäre natürlich eleganter.
Ich melde mich Morgen wie es geklappt hat.
Gruß
Ferenz

Anzeige
Neues Problem
19.04.2008 14:08:58
Ferenz
Hallo Erich,
habe meine Kalkulationen in Einzelschritte aufgelöst ohne die Matrixformel, so wie Du es mir vorgeschlagen hast. Dadurch konnte ich auch eine Wenn-Funktion vor Deine Formel stellen, die besagt: Wenn er einen Schlüssel findet, dann soll er die Formel verwenden, ansonsten soll er eine leere Ziffer ausgeben. Dadurch verringert sich die Berechnungsanzahl auf die Anzahl meiner ASchlüssel. Die Formel steht zwar bis zur letzten Zeile der Spalte, aber das stört kein bischen. Somit ist auch das Problem der unnötigen CPU-Leistungsverschwendung gelöst.
Jetzt wollte ich unsere Ergebnisse (in unserem Beispiel die Kosten) und die Daten aus SAP, in einer anderen Tabelle zusammenführen, die ich auf der Tabelle aufbereite und transparent für Entscheidungen darstelle.
Dabei trat ein Phänomen auf. Ich kann es nich anders erklären. Die Tabelle nennt sich "Header" (s. Abb.)
Die erste Spalte A "Bezeichnung" sind importierte Daten aus SAP. Die Bezeichnung enthält dummer weise immer in einer Zelle den Ort (bspw. FL003)- und die Invest.-Nr. (bspw. "123.456").
Tabelle: Header


Nun zerlege ich diese Bezeichnung und vergleiche sie mit den beiden Spalten Ort und Invest.-Nr. aus unserer erster Tabelle "Bestellung" und gebe den entsprechenden Wert heraus. Dabei kommt Null raus, aber Im Funktionsassistenten steht der richtige Wert drin.
Hier die Tabelle "Bestellung"
Tabelle: Bestellung


Hier meine Formel der Zelle B2 aus der Tabelle "Header":
=SUMMEWENN(Bestellung!A2:A4;INDEX(Bestellung!B2:C4;VERGLEICH(TEIL(Header!A2;3;3)&TEIL(Header!A2; SUCHEN("-";Header!A2)+1;LÄNGE(Header!A2));Bestellung!B2:B4&Bestellung!C2:C4;));Bestellung!D2:D4)
In diesem nachgestellten Beispiel kommt innerhalb der Formel der Funktion "Vergleich" das Ergebnis "#NV" heraus. In meiner originalen Datei steht die Formel entsprechend genauso und da kommt im Funktionsasissten der richtige Wert, aber nicht in der normalen Ansicht.
Woran kann das liegen? Die Formel müsste doch stimmen, oder nicht?
Gruß Ferenz

Anzeige
AW: Neues Problem
20.04.2008 01:18:54
Erich
Hi Ferenz,
deine Formel habe ich nicht ganz verstanden. Ein Problem dabei:
Texte ("003") werden mit Zahlen verglichen werden. Das geht schief.
Ich würd das so schreiben: (Die Doppel-Minusse -- machen Zahlen aus Texten.)
 AB
1BezeichnungBelastung
2FL003-123.4561700
3FL003-123.4561700
4FL007-789.0124950

Formeln der Tabelle
ZelleFormel
B2=SUMMENPRODUKT((--TEIL(A2;3;3)=Bestellung!B2:B4) *(--RECHTS(A2;LÄNGE(A2)-SUCHEN("-";A2))=Bestellung!C2:C4)*Bestellung!D2:D4)
B3=SUMMENPRODUKT((--TEIL(A3;3;3)=Bestellung!B3:B5) *(--RECHTS(A3;LÄNGE(A3)-SUCHEN("-";A3))=Bestellung!C3:C5)*Bestellung!D3:D5)

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: Neues Problem
20.04.2008 01:25:00
Erich
Hi nochmal,
wenn die Länge der Einträge in Sp. A fest ist, reicht wohl auch das hier:
 AB
4FL007-789.0124950

Formeln der Tabelle
ZelleFormel
B4=SUMMENPRODUKT((--TEIL(A4;3;3)=Bestellung!B4:B6) *(--RECHTS(A4;7)=Bestellung!C4:C6)*Bestellung!D4:D6)

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

AW: Neues Problem
20.04.2008 15:03:33
Ferenz
Hallo Erich,
die Einträge sind leider nicht fest, es gibt sogar noch hinter der Investnummer Kommentare. Zum Glück ist, aber immer ein Leerzeichen dazwischen.
Deine Formel mit dem Doppelten-MinusZeichen klappt bei mir nicht. Es kommt als Ergebnis Null raus.
Habe die Zwischenergebnisse mit der Taste "F9" getestet. Dabei kommt bei der Formel:
((--TEIL(A4;3;3) als Ergebniss "3" raus. Aber wenn ich das über die Formelauswertung teste, dann kommt "003" raus. Das ist das selbe Phänomen wie im Geschäft. Also ich verstehe das nicht mehr.
Kannst DU Dir meine Datei ansehen. Habe sie hochgeladen. In der Tabelle "Header" ist die Zelle gelb markiert in der Deine Formel steht.
https://www.herber.de/bbs/user/51723.xls
Gruß Ferenz

AW: Neues Problem
21.04.2008 07:40:04
Erich
Hallo Ferenz,
zwei Probleme habe ich beseitigt:
- Bei den Bereichsangaben im Blatt Bestellung hatte ich die Dollarzeichen vergessen.
- Bei TEIL(A4;3;3) habe ich das "Doppelminus" rausgenommen, da in Spalte Bestellung!B:B
nicht Zahlen, sondern Texte stehen. Dann entfällt natürlich die Umwandlung ein eine Zahl.
Header

 AB
1BezeichnungBelastung
2FL003-123.4561700
3FL005-123.4562850
4FL007-789.0124950

Formeln der Tabelle
ZelleFormel
B2=SUMMENPRODUKT((TEIL(A2;3;3)=Bestellung!$B$2:$B$4) *(--RECHTS(A2;LÄNGE(A2)-SUCHEN("-";A2))=Bestellung!$C$2:$C$4) *Bestellung!$D$2:$D$4)

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

AW: Neues Problem
22.04.2008 18:52:00
Ferenz
Hallo Erich,
das klappt soweit. Die Formel klappt nur solange die Bereiche, Werte erfassen. Sobald aber eine leere Zeile im Bereich enthalten ist gibt mir die Formel ("Summenprodukt") den Fehler "#Wert" zurück.
Ich habe leider sehr viele Zeilen ca. 1000 und die sind bei jeder automatischen Abfrage unterschiedlich viele. Was kann man da noch machen?
Gruß
Ferenz

AW: Neues Problem
22.04.2008 19:25:59
Erich
Hi,
was genau meinst du mit den "Bereichen"?
Leerzellen auf dem Blatt Bestellung ergeben keinen Fehlerwert.
Wenn in Header in Spalte A Leerzellen stehen, gibt es natürlich einen Fehler,
auch, wenn dort kein "-" enthalten ist.
Du könntest die Formel so erweitern
(habe ich von Zeile 2 runterkopiert und hier nur auch für Zeile 6 ausgeben lassen):
 AB
1BezeichnungBelastung
2FL003-123.4561700
3FL005-123.4562850
4FL007-789.0124950
5xyz 
6  

Formeln der Tabelle
ZelleFormel
B2=WENN(ISTFEHLER(SUCHEN("-";A2)); ""; SUMMENPRODUKT((TEIL(A2;3;3)=Bestellung!$B$2:$B$500) *(--RECHTS(A2;LÄNGE(A2)-SUCHEN("-";A2))=Bestellung!$C$2:$C$500) *Bestellung!$D$2:$D$500))
B6=WENN(ISTFEHLER(SUCHEN("-";A6)); ""; SUMMENPRODUKT((TEIL(A6;3;3)=Bestellung!$B$2:$B$500) *(--RECHTS(A6;LÄNGE(A6)-SUCHEN("-";A6))=Bestellung!$C$2:$C$500) *Bestellung!$D$2:$D$500))

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

AW: Neues Problem
23.04.2008 18:44:18
Ferenz
Hallo Erich,
also ich weiss nicht, bei mir ist alles verdreht.
Die Teilformel: "--RECHTS(D20;LÄNGE(D20)-SUCHEN("-";D20))" gibt als Teilergebnis "#Wert" zurück.
aber wenn ich die Teilformel ohne die beiden Minuszeichen "RECHTS(D20;LÄNGE(D20)-SUCHEN("-";D20))" eintrage kommt das korrekte Ergebnis raus. Falls ich die Teilformel ohne die Minuszeichen verwende, dann sind die anderen beiden Teilformeln:
1. "(TEIL(A2;3;3)=Bestellung!$B$2:$B$500) *(--RECHTS(A2;LÄNGE(A2)-SUCHEN("-";A2))=Bestellung!$C$2:$C$500)"
2. "Bestellung!$D$2:$D$500 korrekt"
korrekt.
Aber die Multiplikation beider Teilformeln ergibt zum Schluß der Matrixergebnisse den Fehler "#Wert". Es sieht so aus als ob es die Matrixergebnisse sind, die sich auf die leere Zeilen beziehen.
Das habe ich über die Formelüberwachung festgestellt.
Ich kann diesen Fehlerwert auch nicht in unserer Beispiel-Datei nachahmen.
Ich habe die Formel im Listenbereich, aber daran kann es nicht liegen,w eil ich die Formel ausserhalb des Listenbereichs ausprobiert habe und genau den selben Fehler produziert.
Vieleicht liegt es an der Formatierung oder an sowas ähnlichem.
Kannst DU Dir einen Reim drauf machen?
Gruß
Ferenz

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige