Excel 团队A和B随机化器无重复-代码仅适用于团队A

Excel 团队A和B随机化器无重复-代码仅适用于团队A,excel,vba,Excel,Vba,我的脚本仅与团队1配对(仅与1列配对)。我如何将第2组与第1组合并,以便在下次配对时不重复 只有第一队和第二队才能配对。团队1不需要配对,因为他们已经在一个团队中 Team 1 A,B,C Team 2 D,E,F 当前输出使团队1随机化 A、 B C、 A B、 C 我希望当前的输出将团队1与团队2随机化 输出: A、 D C、 F B、 D 没有重复项。“只需要让团队1与团队2配对。团队1不需要配对,因为他们已经在一个团队中。”这似乎是一个矛盾的说法。包括样本数据和预期结果可能很有用。另外

我的脚本仅与团队1配对(仅与1列配对)。我如何将第2组与第1组合并,以便在下次配对时不重复


只有第一队和第二队才能配对。团队1不需要配对,因为他们已经在一个团队中

Team 1 A,B,C
Team 2 D,E,F
当前输出使团队1随机化

A、 B

C、 A

B、 C

我希望当前的输出将团队1与团队2随机化

输出:

A、 D

C、 F

B、 D


没有重复项。

“只需要让团队1与团队2配对。团队1不需要配对,因为他们已经在一个团队中。”这似乎是一个矛盾的说法。包括样本数据和预期结果可能很有用。另外,解释一下当前输出是什么以及它与预期的差异也会很有用。我很感谢您的反馈。希望我的编辑提供了更多的澄清。不需要随机两个团队,按字母顺序列出团队1,将每个成员与随机选择的团队2成员进行匹配,瞧!随机配对!
Sub RandomPairing()

  Dim Cnt As Long, RandomIndex As Long, Tmp As Variant, Arr As Variant
  Randomize

  Arr = Range("A2", Cells(Rows.Count, "A").End(xlUp))

  Arr = Range("B2", Cells(Rows.Count, "B").End(xlUp))

  For Cnt = UBound(Arr) To 1 Step -1
    RandomIndex = Int((Cnt - LBound(Arr) + 1) * Rnd + LBound(Arr))
    Tmp = Arr(RandomIndex, 1)
    Arr(RandomIndex, 1) = Arr(Cnt, 1)
    Arr(Cnt, 1) = Tmp

  Next
  Range("G4").Resize(UBound(Arr)) = Arr
  Range("G4").Offset(UBound(Arr) / 2).Resize(UBound(Arr)).Cut Range("H4")

End Sub