我在4/5位玩家中有16至40位玩家。表示4到10组。
我想绘制top16(我已经将此列表格式化为:)
Name | Former Group (Ex. With 4 Groups)
Player1 | 1
Player2 | 2
Player3 | 3
Player4 | 4
Player5 | 4
Player6 | 3
Player7 | 2
Player8 | 1
Player9 | 2
Player10 | 1
Player11 | 3
Player12 | 4
Player13 | 1
Player14 | 2
Player15 | 4
Player16 | 3
我想单击一个按钮将其分成4组。没有人来自同一早期小组。该组列出了在前一组中排名第一的玩家,然后是第二名,依此类推。因此,如果它的10组(共4组)我的列表看起来像。作为它的第1位第10名和第2位第6名。
Name | Former Group (Ex. With 10 Groups)
Player1 | 1
Player2 | 2
Player3 | 3
Player4 | 4
Player5 | 5
Player6 | 6
Player7 | 7
Player8 | 8
Player9 | 9
Player10 | 10
Player11 | 3
Player12 | 4
Player13 | 7
Player14 | 5
Player15 | 9
Player16 | 1
我想将这些排名前16位的球员吸引到4个新的小组中,在这些小组中,他们不要与已经在第一轮比赛中打过球的小组分组。
所以我想我会创建一个函数并在单击按钮时调用它。
onClick我想从
收集这些玩家AA6至AA21(有名称) AB6至AB21(有以前的组号)
通过我的功能运行它们。
Private Sub CommandButton11_Click()
ReDim playerNames(0 To 16) As String
ReDim playerGroups(0 To 16) As Integer
For i = 1 To 16
playerNames(i) = Cells(i + 5, 27).Value
playerGroups(i) = Cells(i + 5, 28).Value
Next i
Dim txt As String
Dim txt2 As String
Dim ii As Long
For ii = LBound(playerNames) To UBound(playerNames)
txt = txt & playerNames(ii) & vbCrLf
txt2 = txt2 & playerGroups(ii) & vbCrLf
Next ii
MsgBox txt + txt2
End Sub
我该如何创建一个永远不会给我分组的逻辑呢?
然后我想将它们粘贴到
AC6->AC9 (GroupA)
AD6->AD9 (GroupB)
AE6->AE9 (GroupC)
AF6->AF9 (GroupD)