Bonjour Mjc, bonjour le forum,
La règle d'or en VBA c'est d'éviter les Select inutiles qui ne font que ralentir le code et sont source de plantage.
le code simplifié donne :
Sub DeprotegeToutesFeuillesCategories()
Application.ScreenUpdating = False
Sheets("BF").Unprotect
Sheets("BG").Unprotect
Sheets("MF").Unprotect
Sheets("MG").Unprotect
Sheets("CF").Unprotect
Sheets("CG").Unprotect
Sheets("JF").Unprotect
Sheets("JG").Unprotect
Sheets("SF").Unprotect
Sheets("SG").Unprotect
Sheets("V1F").Unprotect
Sheets("V2F").Unprotect
Sheets("V1G").Unprotect
Sheets("V2G").Unprotect
Sheets("Pupitre").Select
Application.ScreenUpdating = True
End Sub
Toutefois on pourrait peut-être utiliser une boucle mais il nous faudrait la liste complète de tous les onglets du classeur ou leur position...