on a 24 cellules et plus que 24 plages nommées dans la feuille tirage
Sub ReInit()
For Each nm In ThisWorkbook.Names
If LCase(nm.RefersTo) Like "=tirage!*" Then s = s & vbLf & nm.Name 'tous les noms de tirage
Next
sp = Split(Mid(s, 2), vbLf)
ptr = 0
With Sheets("tirage").Range("A5:l5,A7:l7")
.Interior.Color = RGB(255, 255, 0) 'couleur jaune
For Each c In .Cells
r = WorksheetFunction.RandBetween(ptr, UBound(sp)) 'tirage aléatoire d'un nom sans doublon
x = sp(r)
sp(r) = sp(ptr)
sp(ptr) = x
c.Name = x 'nommer cette cellule
ptr = ptr + 1
If ptr > UBound(sp) Then Exit For
Next
End With
End Sub