Option Explicit
Private Sub Workbook_Open()
Dim ws As Worksheet, MaListe As String
For Each ws In Worksheets
MaListe = MaListe & ws.Name & ","
Next ws
With Sheets("Feuil1").Range("A1").Validation
.Delete
.Add xlValidateList, Formula1:=Mid(MaListe, 1, Len(MaListe) - 1)
End With
End Sub