HERBERS Excel-Forum - das Archiv
Bericht über mehrere Tabellen
Christoph

Hallo,
ich habe 13 Tabellen in einer Datei (Noteneingabe von 13 verschiedenen Klassen) - nun möchte ich überprüfen ob alle Noten für alle Fächer und alle Schüler eingetragen worden sind oder ob noch Lücken vorhanden sind.
Mir schwebt da eine 14. Tabelle vor, in der steht dann beispielsweise:
Tabelle8a:
Michel Müller hat keine Religionsnote....usw.
Wie könnte ich so einen Scan meiner 13 Tabellen realisieren?
Vielen Dank schon mal im Voraus!
CS

um die Frage zu beantworten: ganz einfach ;-) ...
der

Hallo Christoph,
... ermittle je Klasse(n-Tabellenblatt) die entsprechenden Informationen aus den dortigen Listen und übertrage diese dann in das 14. Tabellenblatt und zwar dort bezogen ermittelte Daten je Klasse(n-Tabellenblatt).
Gruß Werner
.. , - ...

AW: um die Frage zu beantworten: ganz einfach ;-) ...
Christoph

danke schon mal für die Antwort..
wie aber ermittle ich die Lücken in nur einem Blatt? Über die Anzahl-Funktion könnte ich die Anzahl der Leerzellen ermitteln - ich möchte aber genau die Zelle finden und dem entsprechenden Namen aus der ersten Spalte zuordnen.

mittels AGGREGAT(), MMULT(), INDEX() und ...
der

Hallo Christoph,
... anderen Funktionen im Wesentlichen mit zwei Formeln (keine MATRIXformeln aber eben mit Matrixfunktionalität) in einer entsprechenden Tabellenform.
Diese Tabelle hätte dann für jede Klasse die gleiche Struktur und kannst Du somit im Ergebnistabellenblatt leicht (auch mittels relativ einfachen Formeln) zusammenfassen und hast dann dort eine gute Grundlage für eine flexible wie anschauliche PIVOTauswertung.
Zur Veranschaulichung meines Lösungsvorschlages habe ich das Datenbeispiel von Luc übernommen.
Meine Formel AB3 nach unten in AC kopieren und die Formel in AD3 (mit benutzerdefinierten Zahlenformat: "x";;) nach rechst und unten.
8a

 ABCDEFGHIZAAABACADAEAFAGAHAI
1Klasse8aFach  DatenFach
2NameVornameAlphaBetaGammaDeltaEpsilonVau  KlasseNameVornameAlphaBetaGammaDeltaEpsilonVau
3HinzHeinz3356 4  8aHinzHeinz    x 
4KunzKurt215163  8aMeierMarie x x  
5MeierMarie2 3 32  8aMüllerMichel  x   
6MüllerMichel14 235           
7SchulzeSarah641251           
8                   

Formeln der Tabelle
ZelleFormel
B1=TEIL(ZELLE("Dateiname";$A$1); FINDEN("]";ZELLE("Dateiname";$A$1))+1;31)
AA3=WENN(AB3="";"";B$1)
AB3=WENNFEHLER(INDEX(A:A;AGGREGAT(15;6;ZEILE($A$3:$A$39)/(MMULT(($C$3:$H$39=0)*1;ZEILE(A$1:A$6)^0)>0)/($A$3:$A$39>0); ZEILE(A1))); "")
AD3=($AB3<>"")*SUMMENPRODUKT(($A$3:$A$39&$B$3:$B$39=$AB3&$AC3)*($C$2:$H$2=AD$2)*($C$3:$H$39=0))


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Werner
.. , - ...

AW: mittels AGGREGAT(), MMULT(), INDEX() und ...
Christoph

vielen Dank!
das muss ich jetzt erst mal umsetzen - wenn ich dann zur Zusammenfassung komme (Stichwort Pivotauswertung) werde ich bestimmt noch eine Frage haben
also erst mal herzliche Dank!
Christoph

Wird wohl komplizierter nach Beschreibung, ...
Luc:-?

…Christoph;
weil du es versäumt hast ein Bsp deiner Datenstruktur hochzuladen, musste ich mir etwas ausdenken. Aber als Xl-Guter wirst du meine Lösung wohl deinen Gegebenheiten anpassen können… ;-]
Bsp einer QuellTabelle:
 ABCDEFGH
1Klasse8aFach
2NameVornameAlphaBetaGammaDeltaEpsilonVau
3HinzHeinz3356 4
4KunzKurt215163
5MeierMarie2 3 32
6MüllerMichel14 235
7SchulzeSarah641251
8B1:=TEIL(Splint(ZELLE("dateiname");"]";2;2;1);4;3)
Die Fml in B1 ist nicht wesentlich und kann bei Bedarf mit Xl-StandardFktt nachempfunden wdn.
Hierauf baut dann die nachfolgende Lösung auf. Jedes weitere Blatt muss dabei direkt angesprochen wdn, was bei 13 Blättern wohl kein sonderliches Problem sein sollte:
 ABCDE
1KlasseSchüler … hat keine Note in …→ alternativ: Schüler-Bemerkung→ dito, ohne Leerzeilen
28aHeinz HinzEpsilonHeinz Hinz hat keine Note in EpsilonHeinz Hinz hat keine Note in Epsilon
38aKurt Kunz  Marie Meier hat keine Note in Beta, Delta
48aMarie MeierBeta, DeltaMarie Meier hat keine Note in Beta, DeltaMichel Müller hat keine Note in Gamma
58aMichel MüllerGammaMichel Müller hat keine Note in Gamma 
68aSarah Schulze   E2:E6:
7A2:A6: {=Tab8a!B1}B2:B6: {=Tab8a!B3:B7&" "&Tab8a!A3:A7} {=MTRANS(VSplit(VJoin(D2:D6;"|";-1);"|"))}
8C2:C6: {=VJoin(WENN(ISTLEER(INDEX(Tab8a!C3:C7;ZEILE(1:5)):INDEX(Tab8a!H3:H7;ZEILE(1:5)));Tab8a!C2:H2;"");", ";-1)}
9D2:D6: {=WENN(VJoin(WENN(ISTLEER(INDEX(Tab8a!C3:C7;ZEILE(1:5)):INDEX(Tab8a!H3:H7;ZEILE(1:5)));Tab8a!C2:H2;"");", ";-1)="";"";Tab8a!B3:B7&" "&
10                 Tab8a!A3:A7&" hat keine Note in "&VJoin(WENN(ISTLEER(INDEX(Tab8a!C3:C7;ZEILE(1:5)):INDEX(Tab8a!H3:H7;ZEILE(1:5)));Tab8a!C2:H2;"");", ";-1))}

Die verwendeten UDFs VJoin und VSplit sind im Archiv vorhanden und in bisher letzter Version in dieser Datei zu finden.
Gruß, Luc :-?
Besser informiert mit …

AW: Wird wohl komplizierter nach Beschreibung, ...
Christoph

super - vielen dank -
vjoin und vsplit sind Zusatzfunktionen? In der angegeben Datei werden sie verwendet - wie kann ich sie in meiner Datei verwenden?

Klick auf den Link, da siehst du auch gleich, ...
Luc:-?

…wie du sie in deiner Datei unterbringen musst, Christoph!
Luc :-?

Bericht über mehrere Tabellen
Christoph

Hallo,
ich habe 13 Tabellen in einer Datei (Noteneingabe von 13 verschiedenen Klassen) - nun möchte ich überprüfen ob alle Noten für alle Fächer und alle Schüler eingetragen worden sind oder ob noch Lücken vorhanden sind.
Mir schwebt da eine 14. Tabelle vor, in der steht dann beispielsweise:
Tabelle8a:
Michel Müller hat keine Religionsnote....usw.
Wie könnte ich so einen Scan meiner 13 Tabellen realisieren?
Vielen Dank schon mal im Voraus!
CS

um die Frage zu beantworten: ganz einfach ;-) ...
der

Hallo Christoph,
... ermittle je Klasse(n-Tabellenblatt) die entsprechenden Informationen aus den dortigen Listen und übertrage diese dann in das 14. Tabellenblatt und zwar dort bezogen ermittelte Daten je Klasse(n-Tabellenblatt).
Gruß Werner
.. , - ...

AW: um die Frage zu beantworten: ganz einfach ;-) ...
Christoph

danke schon mal für die Antwort..
wie aber ermittle ich die Lücken in nur einem Blatt? Über die Anzahl-Funktion könnte ich die Anzahl der Leerzellen ermitteln - ich möchte aber genau die Zelle finden und dem entsprechenden Namen aus der ersten Spalte zuordnen.

mittels AGGREGAT(), MMULT(), INDEX() und ...
der

Hallo Christoph,
... anderen Funktionen im Wesentlichen mit zwei Formeln (keine MATRIXformeln aber eben mit Matrixfunktionalität) in einer entsprechenden Tabellenform.
Diese Tabelle hätte dann für jede Klasse die gleiche Struktur und kannst Du somit im Ergebnistabellenblatt leicht (auch mittels relativ einfachen Formeln) zusammenfassen und hast dann dort eine gute Grundlage für eine flexible wie anschauliche PIVOTauswertung.
Zur Veranschaulichung meines Lösungsvorschlages habe ich das Datenbeispiel von Luc übernommen.
Meine Formel AB3 nach unten in AC kopieren und die Formel in AD3 (mit benutzerdefinierten Zahlenformat: "x";;) nach rechst und unten.
8a

 ABCDEFGHIZAAABACADAEAFAGAHAI
1Klasse8aFach  DatenFach
2NameVornameAlphaBetaGammaDeltaEpsilonVau  KlasseNameVornameAlphaBetaGammaDeltaEpsilonVau
3HinzHeinz3356 4  8aHinzHeinz    x 
4KunzKurt215163  8aMeierMarie x x  
5MeierMarie2 3 32  8aMüllerMichel  x   
6MüllerMichel14 235           
7SchulzeSarah641251           
8                   

Formeln der Tabelle
ZelleFormel
B1=TEIL(ZELLE("Dateiname";$A$1); FINDEN("]";ZELLE("Dateiname";$A$1))+1;31)
AA3=WENN(AB3="";"";B$1)
AB3=WENNFEHLER(INDEX(A:A;AGGREGAT(15;6;ZEILE($A$3:$A$39)/(MMULT(($C$3:$H$39=0)*1;ZEILE(A$1:A$6)^0)>0)/($A$3:$A$39>0); ZEILE(A1))); "")
AD3=($AB3<>"")*SUMMENPRODUKT(($A$3:$A$39&$B$3:$B$39=$AB3&$AC3)*($C$2:$H$2=AD$2)*($C$3:$H$39=0))


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Werner
.. , - ...

AW: mittels AGGREGAT(), MMULT(), INDEX() und ...
Christoph

vielen Dank!
das muss ich jetzt erst mal umsetzen - wenn ich dann zur Zusammenfassung komme (Stichwort Pivotauswertung) werde ich bestimmt noch eine Frage haben
also erst mal herzliche Dank!
Christoph

Wird wohl komplizierter nach Beschreibung, ...
Luc:-?

…Christoph;
weil du es versäumt hast ein Bsp deiner Datenstruktur hochzuladen, musste ich mir etwas ausdenken. Aber als Xl-Guter wirst du meine Lösung wohl deinen Gegebenheiten anpassen können… ;-]
Bsp einer QuellTabelle:
 ABCDEFGH
1Klasse8aFach
2NameVornameAlphaBetaGammaDeltaEpsilonVau
3HinzHeinz3356 4
4KunzKurt215163
5MeierMarie2 3 32
6MüllerMichel14 235
7SchulzeSarah641251
8B1:=TEIL(Splint(ZELLE("dateiname");"]";2;2;1);4;3)
Die Fml in B1 ist nicht wesentlich und kann bei Bedarf mit Xl-StandardFktt nachempfunden wdn.
Hierauf baut dann die nachfolgende Lösung auf. Jedes weitere Blatt muss dabei direkt angesprochen wdn, was bei 13 Blättern wohl kein sonderliches Problem sein sollte:
 ABCDE
1KlasseSchüler … hat keine Note in …→ alternativ: Schüler-Bemerkung→ dito, ohne Leerzeilen
28aHeinz HinzEpsilonHeinz Hinz hat keine Note in EpsilonHeinz Hinz hat keine Note in Epsilon
38aKurt Kunz  Marie Meier hat keine Note in Beta, Delta
48aMarie MeierBeta, DeltaMarie Meier hat keine Note in Beta, DeltaMichel Müller hat keine Note in Gamma
58aMichel MüllerGammaMichel Müller hat keine Note in Gamma 
68aSarah Schulze   E2:E6:
7A2:A6: {=Tab8a!B1}B2:B6: {=Tab8a!B3:B7&" "&Tab8a!A3:A7} {=MTRANS(VSplit(VJoin(D2:D6;"|";-1);"|"))}
8C2:C6: {=VJoin(WENN(ISTLEER(INDEX(Tab8a!C3:C7;ZEILE(1:5)):INDEX(Tab8a!H3:H7;ZEILE(1:5)));Tab8a!C2:H2;"");", ";-1)}
9D2:D6: {=WENN(VJoin(WENN(ISTLEER(INDEX(Tab8a!C3:C7;ZEILE(1:5)):INDEX(Tab8a!H3:H7;ZEILE(1:5)));Tab8a!C2:H2;"");", ";-1)="";"";Tab8a!B3:B7&" "&
10                 Tab8a!A3:A7&" hat keine Note in "&VJoin(WENN(ISTLEER(INDEX(Tab8a!C3:C7;ZEILE(1:5)):INDEX(Tab8a!H3:H7;ZEILE(1:5)));Tab8a!C2:H2;"");", ";-1))}

Die verwendeten UDFs VJoin und VSplit sind im Archiv vorhanden und in bisher letzter Version in dieser Datei zu finden.
Gruß, Luc :-?
Besser informiert mit …

AW: Wird wohl komplizierter nach Beschreibung, ...
Christoph

super - vielen dank -
vjoin und vsplit sind Zusatzfunktionen? In der angegeben Datei werden sie verwendet - wie kann ich sie in meiner Datei verwenden?

Klick auf den Link, da siehst du auch gleich, ...
Luc:-?

…wie du sie in deiner Datei unterbringen musst, Christoph!
Luc :-?

Bewerten Sie hier bitte das Excel-Portal