Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1092to1096
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

Datenselektion

Datenselektion
Lars
Hallo Forum und guten Morgen
Ich beise mir gerade etwas die Zähne aus und würde mich um etwas unterstützung freuen...;)
Im Anhang findet Ihr eine Tabelle mit zwei Registern. Im Register Daten sind Rohdaten pro Monat aufgeführt. Die Daten sind Pro Konto, Kostenstelle (KST), und Kostenträger (KTR) aufgeführt.
https://www.herber.de/bbs/user/63651.xls
Im Register Datenupload soll "nur" das Monatsdatum (blau) eingegeben werden können und dann werden die Daten des jeweiligen Kontos, KST und KTR "abgeolt" im Register Rohdaten.
Via der von mir kreierten "Formelkombination" habe ich das Problem das ich nur zwei Kriterien händeln kann. Konto und KST gehen, aber noch den KTR schaffe ich nicht.
Vielen Dank im Voraus für eure Hilfe!
LG
Lars

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Datenselektion
06.08.2009 10:58:24
Ludicla
Hallo Lars
Wie stehts mit Filter in der gleichen Tabelle oder
mit Pivot in gesondertem Blatt ?
Gruss Ludicla.
AW: Datenselektion
06.08.2009 11:05:48
Lars
Hi Ludicla
Fände es "edler", es direkt so aufzubereiten. Beim Filter wie auch bei der Pivottabelle müsse ich einen Zwischenschritt einbauen oder...? Kommt hinzu, dass das Uploadfile recht starr sein muss, ansonsten funktionert der Upload in's ERP nicht.
Gruss
Lars
AW: Datenselektion
06.08.2009 11:19:52
David
hallo Ludicla,
Ist der Aufbau der Datentabelle IMMER genau gleich oder variieren der/die Konto/KST/KTR?
Gruß
David
AW: Datenselektion
06.08.2009 13:00:00
Lars
Hi David
Es könnte neue Konten dazu kommen, so das die Tabelle nach "rechts" etweitert wird. Das Prinzip ist aber immer das selbe Konto, KST, KTR...
Gruss
Lars
Anzeige
AW: Datenselektion
06.08.2009 14:41:28
David
Aber wenn ich dich richtig verstehe, stellt doch deine Upload-Tabelle nichts anderes dar, als die Datentabelle mit einem Filter auf ein bestimmtes Datum und anschließend transponiert, so daß die Spaltenüberschriften dann in der Zeile stehen und dahinter die Werte.
Ich sehe dort keine Notwendigkeit für die von dir angefragte Variabilität?!
Gruß
David
AW: Datenselektion
06.08.2009 15:48:10
Lars
Ja da hast Du recht, ich muss lediglich pro Datumseintrag diese Daten transoponieren. Zugegeben fände ich es noch komfortabel es nicht via Copy/Paste lösen zu müssen. Siehst Du eine Möglichkeit da einen gewissen automatismus einbinden zu können?
Gruss
Lars
Anzeige
AW: Datenselektion
06.08.2009 16:08:24
David
Hallo Lars,
warum nicht einfach so:
Datenupload
 ABCDE
1Dataupload       
2         
3Mandant       
4Journal       
5Datum31.07.09     
6         
7WasKSTKTRKontoWert
8A110BT99501 615,74
9B140GG99501 21,00
10C320TI99502 13,00
11D310SL99502 229,00
12E310TB99502 16,00
13F320AR99503 1.745.828,50
14G320BJ99503 912.795,00
15H320PO99503 33.635,00
16I320PB99503 720,00
17K320TX99503 -
18L320UH99503 307.379,00
19K320LJP99503 10.234,00
20L320CR99503 -
21M320LG99503 3.010.591,50
22N310Slot99503 57.005.938,39
23O310TB99503 13.284.054,00
24P320TT99503 73.300.583,89

verwendete Formeln
Zelle Formel
E8 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
E9 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
E10 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
E11 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
E12 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
E13 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
E14 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
E15 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
E16 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
E17 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
E18 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
E19 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
E20 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
E21 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
E22 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
E23 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
E24 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
{} Matrixformel mit Strg+Umschalt+Enter abschließen

Tabellendarstellung in Foren Version 4.11


Zur Eingabe die Formel in E8 eingeben, mit Enter bestätigen, dann den Bereich von E8:E24 markieren, F2 drücken und mit STRG-SHIFT-ENTER bestätigen.
Gruß
David
Anzeige
AW: Datenselektion
06.08.2009 16:30:09
Lars
Erstmal vielen Dank für Deine Mithilfe!
Wenn ich das richtig verstanden habe hast Du die Konten, KST und KTR fix im Uploadfile definiert und mittels Datumeingabe geht die Formel die entsprechenden Daten "abholen"?
Wenn das so ist, wie ich es oben beschrieben habe ist das ne super Lösung. Ich bin jetzt einbisschen gefordert, denn mit Bereich.Verschieben und Vergleich habe ich keine grosse Erfahrung und da werde ich mich jetzt reindenken! Dauert wohl einen Moment...;)
AW: Datenselektion
06.08.2009 17:01:27
Lars
Hallo David
Jetzt hätte ich noch ne technische Frage, respektive ich kann nicht nachvollziehen warum die Formel die korrekte Zahl findet obwohl in der Formel Bereich.Verschieben die Zeile "immer nur" mit -1 definiert ist?
Warum "braucht" es da die geschwungene Klammer? Wenn ich Bereich.Verschieben anwende werde diese ja nicht benötigt und das ist doch auch eine Matrix Formel oder...?
Anzeige
AW: Datenselektion
07.08.2009 08:34:55
David
Hallo Lars,
die Zeile ist nicht mit -1 definiert, sondern durch den Teil:
VERGLEICH(B5;Daten!$A$1:$A$40;0)-1
Damit wird die Zeile gesucht, in der das gewünschte Datum steht. Da der zu verschiebende Bereich dann die Differenz zwischen Zeile 1 und der gefundenen Zeile umfasst, muss man noch 1 abziehen.
Beispiel:
Datum wird in Zeile 38 gefunden, um von Zeile 1 auf Zeile 38 zu kommen, muss man 37 addieren, also 38-1.
Die Matrixformel habe ich gewählt, da das Ergebnis ja immer genau eine Zeile deiner Daten umfasst und nicht irgendwelche Einzelwerte. Natürlich könnte man auch jeden Wert einzeln suchen und darstellen lassen, was aber aufwändiger ist.
Du kopierst sozusagen immer nur eine komplette Zeile deiner Datentabelle in die Ergebnistabelle (halt nur transponiert von Zeile in Spalte).
Als Einzelformel müsstest du per Bereich.Verschieben jeweils immer eine Spalte nach rechts rücken und dafür die Breite des Bereichs nur mit 1 definieren.
Lange Rede kurzer Sinn, vielleicht ist ein Beispiel besser. Hier mal beide Lösungen nebeneinander:
Datenupload
 ABCDEF
1Dataupload         
2           
3Mandant         
4Journal         
5Datum31.07.09       
6        Matrix"normal"
7WasKSTKTRKontoWert 
8A110BT99501 615,74 615,7419
9B140GG99501 21,00 21
10C320TI99502 13,00 13
11D310SL99502 229,00 229
12E310TB99502 16,00 16
13F320AR99503 1.745.828,50 1745829
14G320BJ99503 912.795,00 912795
15H320PO99503 33.635,00 33635
16I320PB99503 720,00 720
17K320TX99503 - 0
18L320UH99503 307.379,00 307379
19K320LJP99503 10.234,00 10234
20L320CR99503 - 0
21M320LG99503 3.010.591,50 3010592
22N310Slot99503 57.005.938,39 57005938
23O310TB99503 13.284.054,00 13284054
24P320TT99503 73.300.583,89 73300584

verwendete Formeln
Zelle Formel
E8 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
F8 =BEREICH.VERSCHIEBEN(Daten!$A$1;VERGLEICH($B$5;Daten!$A$1:$A$40;0)-1;ZEILE(A1);;)
E9 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
F9 =BEREICH.VERSCHIEBEN(Daten!$A$1;VERGLEICH($B$5;Daten!$A$1:$A$40;0)-1;ZEILE(A2);;)
E10 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
F10 =BEREICH.VERSCHIEBEN(Daten!$A$1;VERGLEICH($B$5;Daten!$A$1:$A$40;0)-1;ZEILE(A3);;)
E11 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
F11 =BEREICH.VERSCHIEBEN(Daten!$A$1;VERGLEICH($B$5;Daten!$A$1:$A$40;0)-1;ZEILE(A4);;)
E12 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
F12 =BEREICH.VERSCHIEBEN(Daten!$A$1;VERGLEICH($B$5;Daten!$A$1:$A$40;0)-1;ZEILE(A5);;)
E13 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
F13 =BEREICH.VERSCHIEBEN(Daten!$A$1;VERGLEICH($B$5;Daten!$A$1:$A$40;0)-1;ZEILE(A6);;)
E14 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
F14 =BEREICH.VERSCHIEBEN(Daten!$A$1;VERGLEICH($B$5;Daten!$A$1:$A$40;0)-1;ZEILE(A7);;)
E15 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
F15 =BEREICH.VERSCHIEBEN(Daten!$A$1;VERGLEICH($B$5;Daten!$A$1:$A$40;0)-1;ZEILE(A8);;)
E16 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
F16 =BEREICH.VERSCHIEBEN(Daten!$A$1;VERGLEICH($B$5;Daten!$A$1:$A$40;0)-1;ZEILE(A9);;)
E17 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
F17 =BEREICH.VERSCHIEBEN(Daten!$A$1;VERGLEICH($B$5;Daten!$A$1:$A$40;0)-1;ZEILE(A10);;)
E18 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
F18 =BEREICH.VERSCHIEBEN(Daten!$A$1;VERGLEICH($B$5;Daten!$A$1:$A$40;0)-1;ZEILE(A11);;)
E19 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
F19 =BEREICH.VERSCHIEBEN(Daten!$A$1;VERGLEICH($B$5;Daten!$A$1:$A$40;0)-1;ZEILE(A12);;)
E20 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
F20 =BEREICH.VERSCHIEBEN(Daten!$A$1;VERGLEICH($B$5;Daten!$A$1:$A$40;0)-1;ZEILE(A13);;)
E21 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
F21 =BEREICH.VERSCHIEBEN(Daten!$A$1;VERGLEICH($B$5;Daten!$A$1:$A$40;0)-1;ZEILE(A14);;)
E22 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
F22 =BEREICH.VERSCHIEBEN(Daten!$A$1;VERGLEICH($B$5;Daten!$A$1:$A$40;0)-1;ZEILE(A15);;)
E23 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
F23 =BEREICH.VERSCHIEBEN(Daten!$A$1;VERGLEICH($B$5;Daten!$A$1:$A$40;0)-1;ZEILE(A16);;)
E24 {=MTRANS(BEREICH.VERSCHIEBEN(Daten!B1;VERGLEICH(B5;Daten!$A$1:$A$40;0)-1;;;18))}
F24 =BEREICH.VERSCHIEBEN(Daten!$A$1;VERGLEICH($B$5;Daten!$A$1:$A$40;0)-1;ZEILE(A17);;)
{} Matrixformel mit Strg+Umschalt+Enter abschließen

Tabellendarstellung in Foren Version 4.11


Ich hoffe, es wird damit klarer.
Gruß
David
Anzeige
AW: Datenselektion
07.08.2009 09:55:23
Lars
Guten Morgen David
Zuerst nochmal ein grosses Dankeschön!
Das mit der -1 habe ich nun verstanden und auch die Möglichekeit es "normal" ohne Matrix zu lösen.
Mein Uploadfile funktioniert einwandfrei und somit bin ich happy ;)
Wünsche Dir ein schönes Weekend.
Gruss
Lars

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige