Microsoft Excel

Herbers Excel/VBA-Archiv

SUmme über mehrere Tabellenblätter bilden | Herbers Excel-Forum


Betrifft: SUmme über mehrere Tabellenblätter bilden von: Wolf
Geschrieben am: 24.02.2010 11:14:30

Hallo, ich hatte schon mal diese Frage gestellt, aber mit der Antwort kam ich nicht richtig weiter (10.2.10).

Ich muss die Formel SUMMEWENN über mehrere Tabellenblätter anwenden. Der Eintrag der Daten, mit denen abgeglichen werden soll, sind über eine auf einem eigenen Tabellenblatt selbst zu erstellende Liste mittels eines Klappmenüs auszuwählen. Wenn im Klappmenu ein Eintrag gemacht worden ist, soll hinten auf der letzten Seite (wo die Rohdaten des Menus stehen) die Summe der Werte C3 bis C8 aller Tabellenblätter ermittelt werden, wenn in den Spaten B3 bis B8 ein bestimmter Eintrag steht.

Damit es nicht allzu abstrakt ist: Es handelt sich um ein Raumbuch, bei dem Tabellenseite 01 den Raum 01 darstellt, Seite 02 den Raum 02 usw. Auf einer letzten Seite trägt der Planer dann die verwendeten Bodenarten ein, um den Boden auf jeder einzelnen Raumseite dann anhand dieser Liste mittels Klappmenu zu klassifizieren.

Wenn also in Raum 01 und 02 Fliesen als Bodenbelag angegeben sind, sollte auf der Übersichtsseite hinter dem Listeneintrag "Fliesen" die aufsummierte Quadratmeherzahl stehen.

Kann hier jemand weiterhelfen?

https://www.herber.de/bbs/user/68218.xls

  

Betrifft: AW: SUmme über mehrere Tabellenblätter bilden von: Christian
Geschrieben am: 24.02.2010 12:24:40

Hallo Wolf,

ein Ansatz mit Support von http://www.excelformeln.de/formeln.html?welcher=342

Referenzliste

 ABCDEF
1     Raum 1
2 Boden  Raum 2
3 Fliesen68,00  Raum 3
4 Teppich7,00  0
5 Laminat0,00  0
6 Parkett0,00  0
7     0
8     0
9     0

Formeln der Tabelle
ZelleFormel
C3{=SUMME((T(INDIREKT("'"&MTRANS(INDIREKT("F1:F"&MAX(ISTTEXT($F$1:$F$1000)*ZEILE($1:$1000))))&"'!C10"))=B3)*(N(INDIREKT("'"&MTRANS(INDIREKT("F1:F"&MAX(ISTTEXT($F$1:$F$1000)*ZEILE($1:$1000))))&"'!C7"))))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
Matrix verstehen


Referenzliste

 F
1Raum 1

Formeln der Tabelle
ZelleFormel
F1=WENN(ZEILE(A1)>ANZAHL2(x)-1;0;TEIL(INDEX(x;ZEILE(A1)); FINDEN("]";INDEX(x;ZEILE(A1)))+1;31))
Namen in Formeln
ZelleNameBezieht sich auf
F1x=ARBEITSMAPPE.ZUORDNEN(1+0*JETZT())
Namen verstehen


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4

MfG Christian


  

Betrifft: AW: SUmme über mehrere Tabellenblätter bilden von: jockel
Geschrieben am: 24.02.2010 13:10:32

hallo Christian, da werden aber nur die jeweils ersten werte zusammen gezählt. ich würde jeweils die summen in den einzelnen tabellen bilden und dann summieren...:


Raum 1

 BC
2Fläche:Raum 01
3Wand 1:13,00 m²
4Wand 2:23,00 m²
5Wand 3:13,00 m²
6Wand 4:23,00 m²
7Boden:16,00 m²
8Decke:16,00 m²
9   
10Boden:Fliesen
11  104,00 m²

verwendete Formeln
Zelle Formel
C11 =SUMME(C3:C8)



Raum 2
 BC
2Fläche:Raum 02
3Wand 1:46,00 m²
4Wand 2:34,00 m²
5Wand 3:46,00 m²
6Wand 4:34,00 m²
7Boden:52,00 m²
8Decke:37,00 m²
9   
10Boden:Fliesen
11  249,00 m²

verwendete Formeln
Zelle Formel
C11 =SUMME(C3:C8)



Raum 3
 BC
2Fläche:Raum 02
3Wand 1:12,00 m²
4Wand 2:8,00 m²
5Wand 3:12,00 m²
6Wand 4:8,00 m²
7Boden:7,00 m²
8Decke:7,00 m²
9   
10Boden:Teppich
11  54,00 m²

verwendete Formeln
Zelle Formel
C11 =SUMME(C3:C8)

Tabellendarstellung in Foren Version 5.14




Referenzliste
 BC
2Boden
3Fliesen353
4Teppich54
5Laminat0
6Parkett0

verwendete Formeln
Zelle Formel
C3 {=SUMME((T(INDIREKT("'"&MTRANS($G$1:$G$3)&"'!C10"))=B3)*(N(INDIREKT("'"&MTRANS($G$1:$G$3)&"'!C11"))))}
C4 {=SUMME((T(INDIREKT("'"&MTRANS($G$1:$G$3)&"'!C10"))=B4)*(N(INDIREKT("'"&MTRANS($G$1:$G$3)&"'!C11"))))}
C5 {=SUMME((T(INDIREKT("'"&MTRANS($G$1:$G$3)&"'!C10"))=B5)*(N(INDIREKT("'"&MTRANS($G$1:$G$3)&"'!C11"))))}
C6 {=SUMME((T(INDIREKT("'"&MTRANS($G$1:$G$3)&"'!C10"))=B6)*(N(INDIREKT("'"&MTRANS($G$1:$G$3)&"'!C11"))))}
{} Matrixformel mit Strg+Umschalt+Enter abschließen

Tabellendarstellung in Foren Version 5.14





cu jörg eine rückmeldung wäre ganz reizend


  

Betrifft: Laminat an der Wand und Decke??? von: Christian
Geschrieben am: 24.02.2010 13:33:20

Hallo Jockel,

m. E. nach wird nach der Bodenfläche gesucht.
Daher auch nur die Auswertung für den Fussboden.
Aber mal schauen was als Antwort kommt ;-)

MfG Christian


  

Betrifft: AW: Laminat an der Wand und Decke??? von: Wolf
Geschrieben am: 24.02.2010 14:56:31

hallo Christian, Du hast ganz recht, Laminat soll auf dem Fußboden verwendet werden. Daher ist Deine Quadratmeterzahl schon richtig. Ich glaube, ich werde noch ein wenig brauchen, bis ich die Formel verstanden habe, aber sie funktioniert! Werde mich dazu morgen noch einmal äußern. Vor allem muss ich sicherstellen, dass auch jemand die Tabelle in die Hand bekommen kann, der von der dahinterliegenden Formel nichts weiß. So dass zB bei den Räumen evtl. noch Zeilen eingefügt werden können, neue Tabellenblätter angefügt und diese mit Sicherheit in die Berechnung aufgenommen werden können.

In diesem Zusammenhang: Geht das Ganze denn auch ohne die zusätzliche Spalte F, etwa durch das Auslesen der Nummerierung des Tabellenblatts, so etwa:

=TEIL(ZELLE("dateiname";A1);FINDEN("Raum";ZELLE("dateiname";A1))+5;2)?


  

Betrifft: Summe über Tabellenblätter von: Christian
Geschrieben am: 24.02.2010 15:29:40

Hallo Wolf,

was stört Dich an der zusätzlichen Spalte, die kann man doch ausblenden!
Wenn ein neues Tab.-Blatt eingefügt wird (vor Refenzliste), erscheint dieses auch in der Aufzählung, und der Bereich von MTRANS wird über die INDIREKT Formel automatisch immer erweitert.
Wenn der Aufbau der neu eingefügten Tab.-Blätter immer gleich ist, gibts auch keine Probleme mit der Berechnung.
Sollten auf den Tab.-Blättern Zeilen eingefügt werden, die die Pos. von Boden verschieben, muss man die Formel noch etwas umändern und die Bereiche vergrößern bzw. noch eine Suchabfrage nach der bspw. Fliesen-Zelle setzen.

MfG Christian


  

Betrifft: AW: Summe über Tabellenblätter von: jockel
Geschrieben am: 24.02.2010 17:11:29

hi Wolf, wenn du dich dazu durchringen könntest, die register nicht "Raum 1" usw. sondern "Raum1" zu benennen, geht unter angabe der anzahl der Räume die du berechnen lassen willst folgendes (die anzahl der räume darf nicht höher sein als die tatsächliche anzahl - kann aber kleiner sein, wenn du ab raum1 nur diesen einen oder die ersten zwei, oder drei berechnen lassen wilst)... umständlich geschrieben, wahrscheinlich, deshalb hier in bunten bildern...


Raum1

 BC
2Fläche:Raum 01
3Wand 1:13,00 m²
4Wand 2:23,00 m²
5Wand 3:13,00 m²
6Wand 4:23,00 m²
7Boden:16,00 m²
8Decke:16,00 m²
9   
10Boden:Fliesen



Raum2
 BC
2Fläche:Raum 02
3Wand 1:46,00 m²
4Wand 2:34,00 m²
5Wand 3:46,00 m²
6Wand 4:34,00 m²
7Boden:52,00 m²
8Decke:37,00 m²
9   
10Boden:Laminat



Raum3
 BC
2Fläche:Raum 02
3Wand 1:12,00 m²
4Wand 2:8,00 m²
5Wand 3:12,00 m²
6Wand 4:8,00 m²
7Boden:7,00 m²
8Decke:7,00 m²
9   
10Boden:Teppich

Tabellendarstellung in Foren Version 5.14




Referenzliste
 BC
1Räume3
2Boden
3Fliesen16,00 m²
4Teppich7,00 m²
5Laminat52,00 m²
6Parkett0,00 m²

verwendete Formeln
Zelle Formel
C3 {=SUMME((T(INDIREKT("Raum"&ZEILE(INDIREKT("A1:A"&$C$1))&"!C10"))=B3)*(N(INDIREKT("Raum"&ZEILE(INDIREKT("A1:A"&$C$1))&"!C7"))))}
C4 {=SUMME((T(INDIREKT("Raum"&ZEILE(INDIREKT("A1:A"&$C$1))&"!C10"))=B4)*(N(INDIREKT("Raum"&ZEILE(INDIREKT("A1:A"&$C$1))&"!C7"))))}
C5 {=SUMME((T(INDIREKT("Raum"&ZEILE(INDIREKT("A1:A"&$C$1))&"!C10"))=B5)*(N(INDIREKT("Raum"&ZEILE(INDIREKT("A1:A"&$C$1))&"!C7"))))}
C6 {=SUMME((T(INDIREKT("Raum"&ZEILE(INDIREKT("A1:A"&$C$1))&"!C10"))=B6)*(N(INDIREKT("Raum"&ZEILE(INDIREKT("A1:A"&$C$1))&"!C7"))))}
{} Matrixformel mit Strg+Umschalt+Enter abschließen

Tabellendarstellung in Foren Version 5.14





cu jörg eine rückmeldung wäre ganz reizend


  

Betrifft: geht auch ohne Umbenennung.. von: Christian
Geschrieben am: 24.02.2010 21:56:04

Hallo Jörg,

geht doch auch mit Leerzeichen im Tabellenblattnamen ;-)

Referenzliste

 ABCDEF
1  4,00  Raum 1
2 Boden  Raum 2
3 Fliesen101,00101,00 Raum 3
4 Teppich1,001,00 Raum 4
5 Laminat1,001,00 
6 Parkett0,000,00 

Formeln der Tabelle
ZelleFormel
C3{=SUMME((T(INDIREKT("'"&MTRANS(INDIREKT("F1:F"&MAX(ISTTEXT($F$1:$F$1000)*ZEILE($1:$1000))))&"'!C10"))=B3)*(N(INDIREKT("'"&MTRANS(INDIREKT("F1:F"&MAX(ISTTEXT($F$1:$F$1000)*ZEILE($1:$1000))))&"'!C7"))))}
D3{=SUMME((T(INDIREKT("'Raum "&ZEILE(INDIREKT("A1:A"&$C$1))&"'!C10"))=B3)*(N(INDIREKT("'Raum "&ZEILE(INDIREKT("A1:A"&$C$1))&"'!C7"))))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
Matrix verstehen


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4

MfG Christian


  

Betrifft: ja, klar... von: jockel
Geschrieben am: 24.02.2010 22:28:00

hi Christian, ich hatte nur keine lust mit den "'" rumzu experimentieren... das passt schon...

mfg jörg


Beiträge aus den Excel-Beispielen zum Thema "SUmme über mehrere Tabellenblätter bilden"