[COLOR="DarkSlateGray"]Sub mélange()
Dim odat(), n As Long, k As Long, m As Long, c As Long
Dim l0 As Long, c0 As Long, l1 As Long, c1 As Long, tmp
recharge [COLOR="SeaGreen"]'facultatif[/COLOR]
With Range("C3:K22") [COLOR="SeaGreen"]'(A adapter aux données)[/COLOR]
odat = .Value
c = UBound(odat, 2)
n = UBound(odat, 1) * c
Randomize
For k = 1 To n - 1
m = 1 + k + Int((n - k) * Rnd)
l0 = 1 + (k - 1) \ c: c0 = k - ((k - 1) \ c) * c
l1 = 1 + (m - 1) \ c: c1 = m - ((m - 1) \ c) * c
tmp = odat(l0, c0): odat(l0, c0) = odat(l1, c1): odat(l1, c1) = tmp
Next k
.Value = odat
End With
End Sub
Sub recharge()
[COLOR="SeaGreen"]'(A adapter aux données)[/COLOR]
Sheets("Feuil1").Range("C3:K22").Value = _
Sheets("Feuil2").Range("C3:K22").Value
End Sub[/COLOR]