Seite 1 von 1

Mannschaftsspielplan aus Ligaspielplan extrahieren?

Verfasst: Di, 16.08.2011 20:14
von hylli
Hi,

mal wieder eine Frage:
Ich habe mir aus dem Dfbnet den Spielplan für unsere Mannschaft per CSV gezogen und in OpenOffice aufbereitet.

Der Spielplan besteht aktuell aus folgenden Spalten:
B: Heim
C: Gast
D: Heim&Gast (zur Berechnung einer Kreuztabelle)
E: Datum
F: Uhrzeit

Über dem jeweiligen Spieltag ist eine von B-F verbundene Zelle mit "X. Spieltag Liga XYZ am Datum".

Nun möchte ich auf einer weiteren Tabelle den Spielplan meiner Mannschaft ausgeben lassen.

Ich dachte da eigentlich auch an eine SVERWEIS-Funktion, aber damit bekomme ich es irgendwie nicht hin?!?

Ausgegeben werden soll der Mannschaftsspielplan meiner Mannschaft, mit den Spalten B, C, E u. F aus dem Ligaspielplan.

Mal wieder jemand einen entscheidenden Tipp für mich?

Danke!

Hylli

Re: Mannschaftsspielplan aus Ligaspielplan extrahieren?

Verfasst: Di, 16.08.2011 20:57
von balu
Hallo Hylli,

moentan versteh ich nicht wirklich viel. Und ohne eine Beispieldatei habe zumindest ICH leichte Vorstellungsprobleme. Aber nun gut, vielleicht helfen dir ja folgende Stichworte.
Ich dachte da eigentlich auch an eine SVERWEIS-Funktion, aber damit bekomme ich es irgendwie nicht hin?!?
Gehts mit SVERWEIS nicht nach links, dann nimm

Code: Alles auswählen

=INDEX()
dann gings.

Ansonsten versuch dich mal mit dem Datenpilot, ist Karolus Liebling :wink:.


Gruß
balu

Re: Mannschaftsspielplan aus Ligaspielplan extrahieren?

Verfasst: Di, 16.08.2011 22:32
von hylli
Der Ligaspielplan sieht ungefähr so aus, wobei es keine eigentlichen Überschriften (Stichwort Datenpilot) gibt
Spieltag 1
Mannschaft 1 - Mannschaft 2 - Datum - Uhrzeit
Mannschaft 3 - Mannschaft 4 - Datum - Uhrzeit
Mannschaft 5 - Mannschaft 6 - Datum - Uhrzeit
Mannschaft 7 - Mannschaft 8 - Datum - Uhrzeit
....
Spieltag 2
Mannschaft 2 - Mannschaft 3 - Datum2 - Uhrzeit2
Mannschaft 4 - Mannschaft 1 - Datum2 - Uhrzeit2
Mannschaft 6 - Mannschaft 7 - Datum2 - Uhrzeit2
Mannschaft 8 - Mannschaft 5 - Datum2 - Uhrzeit2
....
Spieltag 3
....
Spieltag 4
....
Auf einem separaten Tabellenblatt möchte ich nun den Spielplan der Saison einer bestimmten Mannschaft ausgeben, z.B. Mannschaft 2.

Ergebnis sollte dann ungefähr so aussehen:
Mannschaft 1 - Mannschaft 2 - Datum - Uhrzeit
Mannschaft 2 - Mannschaft 3 - Datum2 - Uhrzeit2
Mannschaft X - Mannschaft 2 - Datum3 - Uhrzeit3
Mannschaft 2 - Mannschaft Y - Datum3 - Uhrzeit3
...
Mit

Code: Alles auswählen

index()
geht's denke ich auch nicht.

Möglicherweise muss man ein paar Funktionen mischen, nur die richtige Mischung fehlt mir noch. ;)

Hylli

Re: Mannschaftsspielplan aus Ligaspielplan extrahieren?

Verfasst: Do, 18.08.2011 15:50
von hylli
Lösung über 2 Hilfsspalten gefunden!

Zugegeben, ich wäre per copy&paste natürlich weitaus schneller gewesen, allerdings möchte man das ja auch gerne mal für später weiterverwenden können. ;)

Ich habe zwischenzeitlich eine brauchbare Lösung gefunden, indem ich mir jeweils eine Hilfsspalte beim Ligaspielplan als auch beim Mannschaftsspielplan erstellt habe.

Ligaspielplan:

Spieltag|Hilfsspalte1|Heim|Gast|Hilfsspalte2|Datum|Uhrzeit|Ergebnis

Hilfsspalte2: für Kreuztabelle, für Mannschaftsspielplan irrelevant!!!

Hilfsspalte1: Wenn mein Verein Heim oder Gast ist, dann Verein verbinden mit Spieltag (Verein&Spieltag), also "MeinVerein1", "MeinVerein2",...

Mannschaftsspielplan:

Hilfsspalte|Heim|Gast|Datum|Uhrzeit|Ergebnis

Hilfsspalte: Einfach "MeinVerein1" die Anzahl Spieltage heruntergezogen.

Anschließend konnte ich mit SVERWEIS in den Spalten "Heim|Gast|Datum|Uhrzeit|Ergebnis" mit Suchkriterium "Hilfsspalte" und Matrix Ligaspielplan Spalten "Hilfsspalte1|Heim|Gast|Hilfsspalte2|Datum|Uhrzeit|Ergebnis" sowie Index 2;3;5;6;7 meinen Mannschaftsspielplan erstellen.

Ich hoffe meine Erläuterung ist einigermaßen verständlich.

Natürlich hätte ich mir eine einfachere Lösung gewünscht, die natürlich immer noch sehr willkommen ist, alleine ich komme nicht drauf. ;)

Immerhin ist meine Lösung funktional, wenn auch wahrscheinlich zu umständlich.

Hylli :)

Re: Mannschaftsspielplan aus Ligaspielplan extrahieren?

Verfasst: Do, 18.08.2011 17:54
von balu
Hallo Hylli,

dein zitiertes Beispiel ist zu ungenau, um einen zuverlässlichen Lösungsvorschlag aufzuzeigen. Dennoch hab ich es mal versucht, und wer weiß, vielleicht liege ich ja damit richtig.

Ich habe nur INDEX() und VERGLEICH() eingesetzt.

In der Beispieldatei habe ich in G1 jetzt mal die gewünschte Mannschaft aufgelistet. Und in H1 & H2 den Text "Spieltag 1 bis 2". Und das ist schon mal ein Punkt der einfach zu ungenau von dir dargestellt wurde. Wo steht denn "Spieltag" genau? Über den Mannschaften, oder wie zu letzt links daneben. Wenn links daneben, und dann auch noch so wie in meiner Datei, dann ist ja alles klar. Wenn nicht, tja dann ... pech gehabt balu ...

Weiter gehts.
In der Spalte I ab I6 wirds jetzt richtig interessant, denn dort ist folgende Formel drin.

Code: Alles auswählen

{=INDEX(D6:D15;VERGLEICH($H1&$G1;$A$6:$A$15&$C$6:$C$15;0))}
Muss ich dir noch was zu INDEX sagen? Ich glaub kaum, oder?
Aber zu der VERGLEICH werd ich jetzt etwas sagen.
Mit ihr kann man 2 unterschiedliche Suchparameter in 2 verschiedenen Suchspalten suchen. Das geschieht durch die "Verkettung" von & (Kaufmanns-Und). Sie sucht jetzt einerseits den Text "Spieltag 1", und anderseits die "Mannschaft2". Und wenn beide Kriterien (Suchbegriffe) übereinstimmen, dann wird das dazugehörige Datum ausgegeben.

Achtung!
Diese Index-Formel ist eine Matrix-Formel!


Die anderen Formeln für die Spalte Heim, Gast etc. beziehen sich jetzt auf dieses Datum.

Ohne Hilfsspalten gehts momentan leider nicht. Auch wenn es momentan nicht danach aussieht, der Bereich G1 bis H2 ist ein verkürzter Hilfsspaltenbereich. Denn von irgendwoher muss ja die eben zitierte Formel ihre Suchparameter für die gesuchte Mannschaft und den Spieltag beziehen.

Also mit groß Erklären hab ich es heute nicht so sehr, deshalb hör ich auf. Vielleicht durchschaust Du ja mein System, und wenn nicht, einfach noch mal melden.



Gruß
balu

Re: Mannschaftsspielplan aus Ligaspielplan extrahieren?

Verfasst: Sa, 20.08.2011 14:13
von balu
Hallo Hylli,

so, dein Wunsch geht jetzt in Erfüllung :D.
Habe jetzt in der Beispieldatei zwei Blätter, einmal mit und einmal ohne Hilfsspalte. Wobei die Hilfsspalte im eigentlichem Sinne eigentlich keine ist. Sie beinhaltet nur die Suchkriterien "Spieltage 1 - 26". Und dann ist da noch eine Zelle mit dem wohl weitaus wichtigerem Suchkriterium, nämlich der Spielermannschaft.


Meine bisherigen Formeln habe ich jetzt komplett ersetzt. Ich hatte da nämlich noch etwas in meiner Grabbelkiste, was ich als Ausgangsbasis eingesetzt hatte.

Code: Alles auswählen

{=MAX(WENN(B6:C20=I1;D6:D9))}
In I1 steht die zu suchende Mannschaft. Und die wird im Bereich B6:C20 gesucht, und wenn gefunden, dann wird das Datum aus der gleichen Zeile ausgegeben.

Damit konnte ich aber nur das Datum bekommen, mehr noch nicht. Also musste ich mir Gedanken machen wie ich denn nun herausbekomme ob sie Heim, oder Gast ist und wann sie denn Spielen.

Also musste ich nun überlegen wie ich denn nun an die Zeilennummer komme. Und das geht eigentlich recht simpel, wenn man weiß dass das Datum ja eigentlich so gesehen schon eine Zeilennummer ergibt, ... na ja so ähnlich. Also mal flugs die Formel leicht abgeändert,

Code: Alles auswählen

{=MAX(WENN(B6:C20=I1;ZEILE(D6:D20)))}
und siehe da, ich hab eine Zeilennummer. Und zwar eine Zeilennummer bezogen auf das Tabellenblatt, und NICHT innerhalb des Datenbereichs von B6:C20.

Das ist natürlich jetzt echt Klasse, da das weitere Verfahren nun gar nicht mehr so schwer ist. Da ich nun eine echte Zeilennummer habe, fehlt nur noch die Spaltennummer um ADRESSE() anzuwenden und so Formelintern eine richtige Zelladresse zu bekommen, beispielsweise B9. Also flugs ADRESSE gepaart mit SPALTE() eingebaut, und fertig.

Code: Alles auswählen

{=INDIREKT(ADRESSE(MAX(WENN(($A$6:$A$20=$M1)*($B$6:$C$20=$I$1);ZEILE($A$6:$A$20)));SPALTE(B$1)))}
Das ist die fertige Formel mit der "Hilfsspalte" M, in der die Spieltage aufgelistet sind. Wie Du aber siehst, ist da noch etwas drin was ich noch nicht erklärt habe, und zwar folgender Teil.

Code: Alles auswählen

($A$6:$A$20=$M1)*($B$6:$C$20=$I$1)
Diese "Multiplikation" innerhalb der Matrix-Formel ist genau genommen =UND(), dadurch werden jetzt 2 Suchkriterien gemeinsam verarbeitet. Einerseits die Spieltage, und anderseits die Mannschaft. Durch diese Methode lassen sich also 2 Suchkriterien in 3 Spalten, genauer gesagt, in 1 mal 1 Spalte und in 1 mal 2 Spalten suchen.

Anstelle von $I$1 kannst Du nun als festen Parameter deine Manschaft eingeben, in der Form von ="TSVG Glück auf 09", oder Du nimmst so wie ich eine feste Zelle mit dem Namen. Und in dem Blatt "OHNE_Hilfsspalte" siehst Du wie ich das mit dem "Spieltag" erledigt habe.

Code: Alles auswählen

{=INDIREKT(ADRESSE(MAX(WENN(($A$6:$A$20="Spieltag "&ZEILE($A1))*($B$6:$C$20=$I$1);ZEILE($A$6:$A$20)));SPALTE(B$1)))}
Ach ja! Beinahe vergessen.
Es ist nur die eine Formel drin, im jeweiligem Blatt. Sie ist universall. Du brauchst nur eine an deine Bedürfnisse anzupassen, und dann kannst Du sie nach rechts und nach unten ziehen. Natürlich vorausgesetzt das meine Spaltenaufteilung A bis F deiner Tabelle entspricht.

Und immer schön daran denken :wink:
MATRIX-FORMELN!!!!

Ich hoffe Du kommst nun zurecht.


Gruß
balu

Re: Mannschaftsspielplan aus Ligaspielplan extrahieren?

Verfasst: Do, 25.08.2011 10:24
von hylli
Hi,

Danke auch hier nochmal für Deine Hilfe. Werde mir das in aller Ruhe mal zu Gemüte führen und hoffe die Formeln dann auch noch zu verstehen. :)

Hylli