Sub Test()
Dim Plage As Range, T(), L1 As Long, L2 As Long, TS() As String, LS As Long
Set Plage = Sheets("Feuil2").Range("Y4:Y13")
T = Plage.Value
ReDim TS(1 To VersusJA(UBound(T, 1) - 1, UBound(T, 1)) + 1)
For LS = 1 To UBound(TS)
CalcJAVersus L1, L2, LS - 1
TS(LS) = T(L1, 1) & " " & T(L2, 1)
Next LS
MsgBox Join(TS, vbLf)
End Sub
Public Function VersusJA(ByVal J As Long, ByVal A As Long) As Long
If A < J Then A = A Xor J: J = J Xor A: A = A Xor J
If A > J Then VersusJA = A * (A - 3) \ 2 + J Else VersusJA = -1
If VersusJA < 0 Then Err.Raise 9999, , "VersusJA(" & J & ", " & A & ") impossible."
End Function
Private Sub CalcJAVersus(ByRef J As Long, ByRef A As Long, ByVal VS As Long)
A = Int(Sqr(2 * VS + 0.25) + 1.5)
J = VS - A * (A - 3) \ 2
End Sub