Wir sind eine Spielergruppe, die sich jede Woch trifft. Es kommen nicht jede Woche gleich viele Leute und auch nicht immer die selben.
Der letztplazierte bekommt immer einen Punkt der vorletzte zwei Punkte, usw…
Wenn jedes mal die selbe Anzahl an Spieler wäre, wäre das ja kein Problem. Doch wie mache ich Excel klar, dass der 4. Platz bei insgesamt 5 Spielern 2 Punkte bekommt, doch bei einer Anzahl von 4 Spielern eben nur einen Punkt, da er ja dann letzter ist.
Jeder Spieler bekommt 2 Spalten. In der linken kommt die Platzierung und in der rechten soll Excel automatisch die Punkte eintragen.
Mit nachfolgender Function kannst du die letzte beschriebene Spaltennummer ermitteln. Von dort aus musst du zurück zählen und die Punkte verteilen.
Function GetLastColumn(Optional Blatt As String, Optional introw As Long, Optional intColumn As Integer)
Dim intCountRow, intCountCol As Integer
Dim strValue As String
Dim actSheet As String
On Error Resume Next
Application.ScreenUpdating = False
actSheet = „“
If Blatt „“ Then
actSheet = ActiveSheet.Name
Sheets(Blatt).Select
End If
If introw = 0 Then introw = ActiveCell.SpecialCells(xlLastCell).Row
If intColumn = 0 Then intColumn = ActiveCell.SpecialCells(xlLastCell).Column
If ActiveCell.SpecialCells(xlLastCell).Row „“ Then
GetLastColumn = intCountCol
If actSheet „“ Then Sheets(actSheet).Select
Exit Function
End If
Next
Next
Application.ScreenUpdating = True
End Function
ich habe mal eine Lösung über den SVerweis aufgebaut. Eine Wenn-Abfrage ist meineserachtens ncith sinnvoll.
Ich sende die Beispieldatei mal unkommentiert. Wenndie Lösung nicht nachvollziehbar ist, dann bitte nochmal nachfragen.
Ich kann hier keinen Anhang mitsenden. Bitte eine mailadresse mitteilen für die Exceldatei.
Beste Grüße
H. Schuster
Wir sind eine Spielergruppe, die sich jede Woch trifft. Es
kommen nicht jede Woche gleich viele Leute und auch nicht
immer die selben.
Der letztplazierte bekommt immer einen Punkt der vorletzte
zwei Punkte, usw…
Hallo,
ich habe Dir mal eine Tabelle vorbereitet. Sie ist zwar etwas umständlich, aber sie funktioniert. Wenn Du sie haben möchtest, schick mir bitte eine kurze Nachricht. Ich habe sie als Excel 97/2003-Arbeitsmappe gespeichert.
Gruß Verena
Es gibt mehrere Möglichkeiten:
Man könnte zu Beginn in einer Hilfszelle die Anzahl Spieler eingeben.
Die Formel müsste dann anhand der Hilfszelle den letzten bestimmen.
Wie man dann aber den Vorletzten bestimmt, ist mir aktuell nicht klar.
Im anderen Fall könnte man Spiele ohne Eintrag als „Nicht-Spieler“ deklarieren, alle anderen bekommen wie üblich ihre Punkte.
Hallo,
du brauchst hier einige Excel-Formeln.
Für die Schreibweise der Formeln gibt es in Excel zwei verschiedene Bezugsarten: die A1-Bezugsart und die Z1S1-Bezugsart. Standardmäßig verwendet Excel die A1-Bezugsart. Ich persönlich verwende aber lieber die Z1S1-Bezugsart, da ich dann die Formeln besser verstehe.
Bei der A1-Bezugsart werden die Spalten der Tabelle mit A, B, C, … nummeriert, bei der Z1S1-Bezugsart mit 1, 2, 3, …
Die Bezugsart kann man in den Excel-Optionen vorgeben, in dem man ein Häkchen bei „Z1S1-Bezugsart“ setzt. Im folgenden werde ich die Formeln in der Z1S1-Bezugsart schreiben. Du kannst, wenn du die Formeln eingegeben hast, auch gerne wieder die A1-Bezugsart einstellen. Es ändert sich dadurch nur die Schreibweise der Formeln, die Ergebnisse bleiben gleich.
Zunächst brauchst du eine Zusatzspalte, die rechts (oder auch links) neben der eigentlichen Spieler-Tabelle steht. Entweder trägst du in dieser Spalte die Anzahl der Spieler einfach direkt ein, oder du verwendest die Formel „ANZAHL2(…)“. Die Formel sieht dann ungefähr so aus: =ANZAHL2(ZS1;ZS3;ZS5;ZS7;ZS9). Die Formel kann bei noch mehr Spielern auch entsprechend länger werden. Dabei sind ZS1, ZS3, ZS5 usw. die Bezüge auf die Platzierung der einzelnen Spieler, also die jeweils linke Spalte, die zu einem Spieler gehört. Dabei habe ich angenommen, dass die Platzierung des ersten Spielers in der ersten Spalte steht. Die Funktion „ANZAHL2()“ zählt nur die Zellen, in denen ein Wert enthalten ist und ermittelt so die Anzahl der Spieler. Wenn ein Spieler nicht dabei ist, muss die Zelle mit der Platzierung leer bleiben.
Dann brauchst du eine Formel für die Punktevergabe. Diese Formel sollte etwa so aussehen: =WENN(ISTLEER(ZS(-1));0;MAX(ZS12-ZS(-1)+1;0))
Diese Formel steht bei jedem Spieler in der rechten Spalte, immer dieselbe Formel. Der Bezug ZS12 gibt an, dass die ermittelte Anzahl der Spieler in der 12. Spalte in der selben Zeile steht. Das kann bei dir anders sein, dann musst du den Bezug entsprechend anpassen.
Die WENN-Funktion unterscheidet zwischen teilnehmenden und nicht teilnehmenden Spielern. Die ISTLEER-Funktion ermittelt, ob ein Spieler teilgenommen hat oder nicht. (Leere Zelle bei der Platzierung = nicht teilgenommen). Ein Spieler, der nicht teilgenommen hat, erhält 0 Punkte.
Die Teil-Funktion „MAX(ZS12-ZS(-1)+1;0)“ ermittelt die Punkte für die Spieler, die teilgenommen haben. Der letzte Platz erhält jeweils 1 Punkt. Die MAX-Funktion sorgt lediglich dafür, dass keine negativen Werte auftreten können, falls du versehentlich eine falsche Platzierung eingibst, z.B. 6. Platz bei insgesamt nur 4 Spielern.
In den sind Spalten die Spieler (je zwei Spalten für Platz und Punkte), in den Zeilen verschiedene Datumswerte. Dann empfehle ich, eine zusätzliche Spalte einzufügen, in der die Anzahl der zum betr. Termin anwesenden Spieler steht; das macht es etwas einfacher.
Die Formel für die Punkte eines jeden Spielers ist dann:
Punkte_A = Spieleranzahl - Platz_A + 1
vG
Wir sind eine Spielergruppe, die sich jede Woch trifft. Es
kommen nicht jede Woche gleich viele Leute und auch nicht
immer die selben.
Der letztplazierte bekommt immer einen Punkt der vorletzte
zwei Punkte, usw…
Jeder Spieler bekommt 2 Spalten. In der linken kommt die
Platzierung und in der rechten soll Excel automatisch die
Punkte eintragen.
Vor den Spielern solltest du eine Zeile mit der Anzahl der Spieler eintragen. So ist es am leichtesten. Dann muss eine Wenn-Funktion herhalten.
Für den Spieler A, nach deinem Schema, wo B2=Anzahl der Spieler in dieser Runde und C2=Platzierung in dieser Runde. Für 4 Spieler habe ich es nun 1x gemacht und es funktioniert.