XL 2019 VBA Ajouter ou enlever la protection d'un onglet

frederio

XLDnaute Impliqué
Bonjour à tous

Tu vous connais comment faire ?
comment faire protéger ou enlever ajouter VBA

Si tu veux être d’accord avec moi ??? vous m’aidez a expliqué comme Excel Merci
 

Pièces jointes

  • VBA Ajouter ou enlever la protection d'un onglet.xlsm
    76.1 KB · Affichages: 4

Staple1600

XLDnaute Barbatruc
Bonsoir

Avec deux macros
VB:
Sub proteger()
Dim ws As Worksheet
For Each ws In Worksheets
    ws.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
    ws.EnableSelection = xlUnlockedCells
    Next
End Sub
Sub deproteger()
Dim ws As Worksheet
For Each ws In Worksheets
    ws.Unprotect
    Next
End Sub
Il faut ensuite affecter la macro à chaque bouton
Puis enregistrer sous au format *.xlsm
(pour conserver les macros)

Ci-dessous lien vers un tutoriel pour Affecter une macro à un bouton
 

frederio

XLDnaute Impliqué
bonsoir
comment faire ?

Sur la 1ère feuille "CHAMPIONNANT"
Sur la 2ère feuille "SAISON"
= protéger ou enlever

Sur la 3ère feuille "LES RESULTATS DES MATCHS"
Sur la 4ère feuille "%"
=reste protéger

Sur la feuille pas tous enlever protection
merci
 

Pièces jointes

  • VBA Ajouter ou enlever la protection d'un onglet.xlsm
    25.2 KB · Affichages: 1

Staple1600

XLDnaute Barbatruc
Bonjour

En bouclant sur le nom des feuilles
Code:
Sub protegerB()
Dim ws As Worksheet
For Each ws In Worksheets
Select Case ws.Name
Case "CHAMPIONNAT", "SAISON"
ws.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, _
            AllowFiltering:=True, AllowUsingPivotTables:=True
ws.EnableSelection = 1
Case Else
ws.Unprotect
End Select
Next
End Sub
Dans cet exemple, seules les feuilles CHAMPIONNAT et SAISON seront protégées.
 

frederio

XLDnaute Impliqué
c est petite problème

2022-03-17_16-29-35.png
 

frederio

XLDnaute Impliqué
bonjour j ai trouve le code VBA :)

VB:
Sub Proteger()
On Error Resume Next
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
  Sheets("SAISON").Protect UserInterFaceOnly:=True
    Sheets("CHAMPIONNANT").Protect UserInterFaceOnly:=True
End Sub
Public Sub Deproteger()
    'On Error Resume Next

Application.ScreenUpdating = False

'enlever protection feuilles
    Sheets("SAISON").Select
    ActiveSheet.Unprotect ("EQUIPES")
    Sheets("CHAMPIONNANT").Select
    ActiveSheet.Unprotect ("EQUIPES")

End Sub
 

Pièces jointes

  • VBA Ajouter ou enlever la protection d'un onglet.xlsm
    26.6 KB · Affichages: 0

Statistiques des forums

Discussions
312 194
Messages
2 086 066
Membres
103 110
dernier inscrit
Privé