Sub Liste_a_remplir()
Dim formule As String
'1re étape :
'ajouter la liste des feuilles :
For Each feuille In Worksheets
formule = formule & ";" & feuille.Name
Next
'oter le ; en trop
formule = Right(formule, Len(formule) - 1)
feuille_choix = "Feuil1"
'ajouter à la cellule A1 la liste de validation :
With Sheets(feuille_choix).Cells(1, 1).Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=formule
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
Sub Securiser()
feuille_choix = "Feuil1"
reference_ok = False
'2e étape :
'sécurisé la feuille choisie
feuille_choisie = Sheets(feuille_choix).Cells(1, 1).Value
'si la cellule A1 est vide : fin
If feuille_choisie = "" Then End
'si la cellule A1 ne fait pas référence à une feuille (cas possible en cas de changement de nom d'une feuille) : msg
For Each feuille_comparaison In Worksheets
If feuille_comparaison.Name = feuille_choisie Then reference_ok = True
Next
If reference_ok = False Then
MsgBox "Feuille introuvable", vbCritical
End
End If
'vérrouiller la feuille
Worksheets(feuille_choisie).Protect "MdP", DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub