Um die Tabelle zu sortieren, müssen Sie ein VBA-Skript schreiben. Im Allgemeinen kann die Formel in einer Zelle keinen Einfluss auf den Inhalt der anderen Zelle haben (genauer gesagt die Formel der anderen Zelle; eine Zelle kann den Wert der anderen Zellen ändern, wenn die anderen Zellen eine Formel enthalten, die sich darauf bezieht).
Um dieses Problem zu umgehen, können Sie die Zieltabelle nach dem Aktualisieren der Quelltabelle (dh nach Zeitplan) sortieren (dh die Ergebnisse werden sortiert).
- Ändern Sie die Quelltabelle so, dass das Ranking automatisch berechnet wird
- Aktualisieren Sie die Zieltabelle so, dass ihr Inhalt anhand von der Quelltabelle nachgeschlagen wird
VLOOKUP
.
Schritt 1
Machen Sie die Rangfolge in der ersten Spalte (dh Spalte A in diesem Beispiel) und machen Sie die Formel wie folgt:
A | B | C --------------------------------------------------+------+------------------- Rank | Team | Winning Percentage =COUNTIF(C$2:C$9,">"&C2)+1 | A | 0.05 =COUNTIF(C$2:C$9,">"&C3)+COUNTIF(C$2:C2, C3)+1 | B | 0.99 =COUNTIF(C$2:C$9,">"&C4)+COUNTIF(C$2:C3, C4)+1 | C | 0.81 =COUNTIF(C$2:C$9,">"&C5)+COUNTIF(C$2:C4, C5)+1 | D | 0.92 =COUNTIF(C$2:C$9,">"&C6)+COUNTIF(C$2:C5, C6)+1 | E | 0.54 =COUNTIF(C$2:C$9,">"&C7)+COUNTIF(C$2:C6, C7)+1 | F | 0.15 =COUNTIF(C$2:C$9,">"&C8)+COUNTIF(C$2:C7, C8)+1 | G | 0.15 =COUNTIF(C$2:C$9,">"&C9)+COUNTIF(C$2:C8, C9)+1 | H | 0.40
Bitte aktualisieren Sie den Bereich selbst. Das erste COUNTIF
zählt, wie viele Teams einen Gewinnanteil haben, und das zweite COUNTIF
zählt, wie viele Teams damit verbunden sind. Dies ist wichtig, weil wir nicht wollen, dass das Ranking durch eine doppelte Rangfolge verwirrt wird VLOOKUP
.
Das obige Beispiel sieht zum Beispiel so aus:
Rank | Team | Winning Percentage 8 | A | 5% 1 | B | 99% 3 | C | 81% 2 | D | 92% 4 | E | 53% 6 | F | 15% 7 | G | 15% 5 | H | 40%
Da Sie sehen, dass Team F und Team G den gleichen Gewinnanteil haben, wird ihnen ein anderes Ranking zugewiesen.
Schritt 2
In Ihrer Zieltabelle (dh in der Tabelle) müssen Sie diese aktualisieren, indem Sie Folgendes verwenden VLOOKUP
:
A | B | C -----+---------------------------------------------+------------------------------------------ Rank | Team | Winning percentage 1 | =VLOOKUP($A2,Schedule!$A$1:$C$9,2,FALSE) | =VLOOKUP($A2,Schedule!$A$1:$C$9,3,FALSE) 2 | =VLOOKUP($A3,Schedule!$A$1:$C$9,2,FALSE) | =VLOOKUP($A3,Schedule!$A$1:$C$9,3,FALSE) 3 | =VLOOKUP($A4,Schedule!$A$1:$C$9,2,FALSE) | =VLOOKUP($A4,Schedule!$A$1:$C$9,3,FALSE) 4 | =VLOOKUP($A5,Schedule!$A$1:$C$9,2,FALSE) | =VLOOKUP($A5,Schedule!$A$1:$C$9,3,FALSE) 5 | =VLOOKUP($A6,Schedule!$A$1:$C$9,2,FALSE) | =VLOOKUP($A6,Schedule!$A$1:$C$9,3,FALSE) 6 | =VLOOKUP($A7,Schedule!$A$1:$C$9,2,FALSE) | =VLOOKUP($A7,Schedule!$A$1:$C$9,3,FALSE) 7 | =VLOOKUP($A8,Schedule!$A$1:$C$9,2,FALSE) | =VLOOKUP($A8,Schedule!$A$1:$C$9,3,FALSE) 8 | =VLOOKUP($A9,Schedule!$A$1:$C$9,2,FALSE) | =VLOOKUP($A9,Schedule!$A$1:$C$9,3,FALSE)
Und Sie erhalten Ihre Ergebnisse wie:
Rank | Team | Winning percentage 1 | B | 99% 2 | D | 92% 3 | C | 81% 4 | E | 53% 5 | H | 40% 6 | F | 15% 7 | G | 15% 8 | A | 5%