Bonsoir le forum, maud et robert,
si je ne me plante pas, je crois que le code ci-àprès premettra de protégert et puis déprotéger les feuilles 1 et 2 (ou +) avec un mot de passe.
Je crois aussi que 'mise à jour de la requête doit être placé avant le endif sinon la requête risque de s'effecteur sur la feuille protégée
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If ActiveSheet.Cells(1, 4).Value <> "" Then 'ta cellule D1
Sheets("feuil1").Select
ActiveSheet.Unprotect ("password")
Sheets("feuil2").Select
ActiveSheet.Unprotect ("password")
'mise à jour de ta requête
endif
Sheets("feuil1").Select
ActiveSheet.protect ("password")
Sheets("feuil2").Select
ActiveSheet.protect ("password")
Francis