Microsoft Excel

Herbers Excel/VBA-Archiv

zeilen / spalten neu anordnen

Betrifft: zeilen / spalten neu anordnen von: Dirk
Geschrieben am: 09.09.2004 13:25:13


hallo,
habe ein problem:
habe eine preisdatei mit folgendem aufbau:

Artikelnummer Bezeichnung bruttopreis menge rabatt staffelpreis
112233 TEST1 30 € 1 1 30 €
112233 TEST1 30 € 50 0,69 20,70 €
112233 TEST1 30 € 200 0,66 19,80 €
112233 TEST1 30 € 500 0,62 18,60 €

um diese aber weiterverarbeiten zu können sollte diese so aussehen:

die ersten 3 spalten bleiben gleich, wie oben
menge1 rabatt1 staffelpreis1 menge2 rabatt2 staffelpreis2 usw....


also in worten:

da der artikel in der ersten liste 4mal enthalten ist, wird dieser auch
4mal beim abgleich getroffen - wie kann ich jetzt diese nicht mehr als zeilen,
sondern an spalten angezeigt werden??

ist das schnell machbar??

danke schon mal im vorraus - bin für alle vorschläge offen

dirk

  


Betrifft: mein Vorschlag: von: Günther Oppold
Geschrieben am: 09.09.2004 15:50:24

Hallo Dirk

mit den Indirekt-Formeln, in denen du die jeweilige Zeile der Haupttabelle berechnen musst

Tabelle3
 ABCDEF
1ArtikelnummerBezeichnungbruttopreismengerabattstaffelpreis
2112233TEST1301130
3112233TEST130500,6920,7
4112233TEST1302000,6619,8
5112233TEST1305000,6218,6
6112234TEST2201120
7112234TEST2201000,7515
8112234TEST2203000,6613,2
9112234TEST2205000,6112,2
Formeln der Tabelle
F7 : =C7*E7
F8 : =C8*E8
F9 : =C9*E9
 
Tabelle4
 ABCDEFGHI
1ArtikelnummerBezeichnungbruttopreismengerabattstaffelpreisMenge2Rabatt 2Staffelpreis 2
2112233TEST1301130500,6920,7
3112234TEST22011201000,7515
Formeln der Tabelle
A2 : =INDIREKT("Tabelle3!A"&(ZEILE()-1)*4)
B2 : =INDIREKT("Tabelle3!B"&(ZEILE()-1)*4)
C2 : =INDIREKT("Tabelle3!C"&(ZEILE()-1)*4)
D2 : =INDIREKT("Tabelle3!D"&(ZEILE()-1)*4-2)
E2 : =INDIREKT("Tabelle3!E"&(ZEILE()-1)*4-2)
F2 : =INDIREKT("Tabelle3!F"&(ZEILE()-1)*4-2)
G2 : =INDIREKT("Tabelle3!D"&(ZEILE()-1)*4-1)
H2 : =INDIREKT("Tabelle3!E"&(ZEILE()-1)*4-1)
I2 : =INDIREKT("Tabelle3!F"&(ZEILE()-1)*4-1)
A3 : =INDIREKT("Tabelle3!A"&(ZEILE()-1)*4)
B3 : =INDIREKT("Tabelle3!B"&(ZEILE()-1)*4)
C3 : =INDIREKT("Tabelle3!C"&(ZEILE()-1)*4)
D3 : =INDIREKT("Tabelle3!D"&(ZEILE()-1)*4-2)
E3 : =INDIREKT("Tabelle3!E"&(ZEILE()-1)*4-2)
F3 : =INDIREKT("Tabelle3!F"&(ZEILE()-1)*4-2)
G3 : =INDIREKT("Tabelle3!D"&(ZEILE()-1)*4-1)
H3 : =INDIREKT("Tabelle3!E"&(ZEILE()-1)*4-1)
I3 : =INDIREKT("Tabelle3!F"&(ZEILE()-1)*4-1)
 
Excel Tabellen einfach im Web darstellen   Excel Jeanie HTML  2.0    Download  

Günther

  


Betrifft: AW: zeilen / spalten neu anordnen von: Dirk
Geschrieben am: 10.09.2004 08:43:40

Hallo Günther,
vielen Danke für deine schnelle und wirklich gute Antwort -
habe es gleich ausprobiert und es hat funktioniert.

allerdings funktioniert das ja nur, wenn der aufbau immer gleich ist -
was mache ich, wenn ich variable staffeln habe, z.b.
bei einem artikel gibt es 5 preis/mengen-staffeln - beim nächsten artikel nur 3
etc.

Danke & Gruß
Dirk


  


Betrifft: AW: zeilen / spalten neu anordnen von: Günther Oppold
Geschrieben am: 10.09.2004 12:20:27

Hallo Dirk

Voraussetzung für meine Lösung:
die Artikel-Nrn sind nummerisch aufsteigend sortiert
die Formel in Tabelle2!A3 - und aufsteigend ist eine ARRAY-Formel - die geschweifte Klammer nicht eingeben, sondern die Formeleingabe abschließen mit Strg+Umsch+Enter

Die Formel kann immer von der Mengenspalte nach rechts in die Preisspalte und nach unten kopiert werden. Für jede neue "Menge" muss der zähler(xx) bei: Vergleich(...)+xx
um 1 erhöht werden

Tabelle1
 ABC
1ArtikelMenge Preis
2123150
31235047
412315045
5124160
612410058
7125180
 
Tabelle2
 ABCDEFG
1ArtikelMenge PreisMenge 2Preis2Menge3Preis3
2123150504715045
312416010058  
4125180    
Formeln der Tabelle
A2 : =KKLEINSTE(Tabelle1!A2:A7;1)
B2 : =INDEX(Tabelle1!B$2:B$7;VERGLEICH($A2;Tabelle1!$A$2:$A$7;0))
C2 : =INDEX(Tabelle1!C$2:C$7;VERGLEICH($A2;Tabelle1!$A$2:$A$7;0))
D2 : =WENN(ISTFEHLER(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A2;Tabelle1!$A$2:$A$7;0)+1));"";WENN(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A2;Tabelle1!$A$2:$A$7;0)+1)=$A2;INDEX(Tabelle1!B$2:B$7;VERGLEICH($A2;Tabelle1!$A$2:$A$7;0)+1);""))
E2 : =WENN(ISTFEHLER(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A2;Tabelle1!$A$2:$A$7;0)+1));"";WENN(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A2;Tabelle1!$A$2:$A$7;0)+1)=$A2;INDEX(Tabelle1!C$2:C$7;VERGLEICH($A2;Tabelle1!$A$2:$A$7;0)+1);""))
F2 : =WENN(ISTFEHLER(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A2;Tabelle1!$A$2:$A$7;0)+2));"";WENN(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A2;Tabelle1!$A$2:$A$7;0)+2)=$A2;INDEX(Tabelle1!B$2:B$7;VERGLEICH($A2;Tabelle1!$A$2:$A$7;0)+2);""))
G2 : =WENN(ISTFEHLER(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A2;Tabelle1!$A$2:$A$7;0)+2));"";WENN(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A2;Tabelle1!$A$2:$A$7;0)+2)=$A2;INDEX(Tabelle1!C$2:C$7;VERGLEICH($A2;Tabelle1!$A$2:$A$7;0)+2);""))
A3 : {=KKLEINSTE(WENN(Tabelle1!A$2:A$7>Tabelle2!A2;Tabelle1!A$2:A$7);1)}
B3 : =INDEX(Tabelle1!B$2:B$7;VERGLEICH($A3;Tabelle1!$A$2:$A$7;0))
C3 : =INDEX(Tabelle1!C$2:C$7;VERGLEICH($A3;Tabelle1!$A$2:$A$7;0))
D3 : =WENN(ISTFEHLER(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A3;Tabelle1!$A$2:$A$7;0)+1));"";WENN(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A3;Tabelle1!$A$2:$A$7;0)+1)=$A3;INDEX(Tabelle1!B$2:B$7;VERGLEICH($A3;Tabelle1!$A$2:$A$7;0)+1);""))
E3 : =WENN(ISTFEHLER(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A3;Tabelle1!$A$2:$A$7;0)+1));"";WENN(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A3;Tabelle1!$A$2:$A$7;0)+1)=$A3;INDEX(Tabelle1!C$2:C$7;VERGLEICH($A3;Tabelle1!$A$2:$A$7;0)+1);""))
F3 : =WENN(ISTFEHLER(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A3;Tabelle1!$A$2:$A$7;0)+2));"";WENN(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A3;Tabelle1!$A$2:$A$7;0)+2)=$A3;INDEX(Tabelle1!B$2:B$7;VERGLEICH($A3;Tabelle1!$A$2:$A$7;0)+2);""))
G3 : =WENN(ISTFEHLER(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A3;Tabelle1!$A$2:$A$7;0)+2));"";WENN(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A3;Tabelle1!$A$2:$A$7;0)+2)=$A3;INDEX(Tabelle1!C$2:C$7;VERGLEICH($A3;Tabelle1!$A$2:$A$7;0)+2);""))
A4 : {=KKLEINSTE(WENN(Tabelle1!A$2:A$7>Tabelle2!A3;Tabelle1!A$2:A$7);1)}
B4 : =INDEX(Tabelle1!B$2:B$7;VERGLEICH($A4;Tabelle1!$A$2:$A$7;0))
C4 : =INDEX(Tabelle1!C$2:C$7;VERGLEICH($A4;Tabelle1!$A$2:$A$7;0))
D4 : =WENN(ISTFEHLER(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A4;Tabelle1!$A$2:$A$7;0)+1));"";WENN(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A4;Tabelle1!$A$2:$A$7;0)+1)=$A4;INDEX(Tabelle1!B$2:B$7;VERGLEICH($A4;Tabelle1!$A$2:$A$7;0)+1);""))
E4 : =WENN(ISTFEHLER(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A4;Tabelle1!$A$2:$A$7;0)+1));"";WENN(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A4;Tabelle1!$A$2:$A$7;0)+1)=$A4;INDEX(Tabelle1!C$2:C$7;VERGLEICH($A4;Tabelle1!$A$2:$A$7;0)+1);""))
F4 : =WENN(ISTFEHLER(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A4;Tabelle1!$A$2:$A$7;0)+2));"";WENN(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A4;Tabelle1!$A$2:$A$7;0)+2)=$A4;INDEX(Tabelle1!B$2:B$7;VERGLEICH($A4;Tabelle1!$A$2:$A$7;0)+2);""))
G4 : =WENN(ISTFEHLER(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A4;Tabelle1!$A$2:$A$7;0)+2));"";WENN(INDEX(Tabelle1!$A$2:$A$7;VERGLEICH($A4;Tabelle1!$A$2:$A$7;0)+2)=$A4;INDEX(Tabelle1!C$2:C$7;VERGLEICH($A4;Tabelle1!$A$2:$A$7;0)+2);""))
 
Excel Tabellen einfach im Web darstellen   Excel Jeanie HTML  2.0    Download  

Günther

 

Beiträge aus den Excel-Beispielen zum Thema "zeilen / spalten neu anordnen"