Comment bloquer le nom des feuilles ?

Salutations,

Y a-t-il quelque chose de prévu pour interdire la modification des noms des feuilles d'un classeur ?

Salut le forum

Regarde le fichier de Nad-Dan sur le lien suivant : Interdire la modification du nom d'un onglet

Mytå

C'est exactement ce que je recherche mais je ne sais pas comment l'introduire dans la macro qui existe déjà dans mon programme.

A noter qu'avant cela, j'ai changé des feuilles de place, cela aura-t-il une influence ? car la feuille 8 "Visites" dans le positionnement actuel, n'est pas la feuil8 que l'on retrouve dans les VB en Excel Object

La macro à introduire :

Const e As String = "RSU"
Const f As String = "TRAV"
Const g As String = "Atelier V"
Const h As String = "Atelier W"
Const i As String = "Atelier Z"
Const j As String = "Cui-Dep"
Const k As String = "Cultes"
Const l As String = "Visites"
Const m As String = "SportsPreaux"
Const n As String ="SPSPolyPlanton"
Const o As String = "1R"
Const p As String = "POP1R"
Const q As String = "2R"
Const r As String = "POP2R"
Const s As String = "3R"
Const t As String = "POP3R"
Const u As String = "1S"
Const v As String = "POP1S"
Const w As String = "2S"
Const x As String = "POP2S"
Const y As String = "3S"
Const z As String = "POP3S"
Private Sub Workbook_Open()
'Macro par Dan - pour jean michel le 12/02/08 - Excel pratique
Application.ScreenUpdating = False
Feuil1.Name = e
Feuil2.Name = f
Feuil3.Name = g
Feuil4.Name = h
Feuil5.Name = i
Feuil6.Name = j
Feuil7.Name = k
Feuil8.Name = l
Feuil9.Name = m
Feuil10.Name = n
Feuil11.Name = o
Feuil12.Name = p
Feuil13.Name = q
Feuil14.Name = r
Feuil15.Name = s
Feuil16.Name = t
Feuil17.Name = u
Feuil18.Name = v
Feuil19.Name = w
Feuil20.Name = x
Feuil21.Name = y
Feuil22.Name = z
End Sub

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
'Macro par Dan - pour jean michel le 12/02/08 - Excel pratique
Application.ScreenUpdating = False
Feuil1.Name = e
Feuil2.Name = f
Feuil3.Name = g
Feuil4.Name = h
Feuil5.Name = i
Feuil6.Name = j
Feuil7.Name = k
Feuil8.Name = l
Feuil9.Name = m
Feuil10.Name = n
Feuil11.Name = o
Feuil12.Name = p
Feuil13.Name = q
Feuil14.Name = r
Feuil15.Name = s
Feuil16.Name = t
Feuil17.Name = u
Feuil18.Name = v
Feuil19.Name = w
Feuil20.Name = x
Feuil21.Name = y
Feuil22.Name = z
End Sub

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
'Macro par Dan - pour jean michel le 12/02/08 - Excel pratique
Application.ScreenUpdating = False
Feuil1.Name = e
Feuil2.Name = f
Feuil3.Name = g
Feuil4.Name = h
Feuil5.Name = i
Feuil6.Name = j
Feuil7.Name = k
Feuil8.Name = l
Feuil9.Name = m
Feuil10.Name = n
Feuil11.Name = o
Feuil12.Name = p
Feuil13.Name = q
Feuil14.Name = r
Feuil15.Name = s
Feuil16.Name = t
Feuil17.Name = u
Feuil18.Name = v
Feuil19.Name = w
Feuil20.Name = x
Feuil21.Name = y
Feuil22.Name = z
End Sub

La macro de mon programme grâce au travail de Banzai64:

Private Sub Workbook_Open()
Dim Ws As Worksheet

  For Each Ws In Sheets
    If Left(Ws.Name, 8) = "Atelier " Then
      Ws.Protect Password:="12345678" & LCase(Right(Ws.Name, 1)), DrawingObjects:=False, Contents:=True, Scenarios:=False, userinterfaceonly:=True
   ElseIf Ws.Name = "Cui-Dep" Then
      Ws.Protect Password:="12345678" & LCase(Replace(Ws.Name, "-", "")), DrawingObjects:=False, Contents:=True, Scenarios:=False, userinterfaceonly:=True
   ElseIf Ws.Name = "SportsPreaux" Then
      Ws.Protect Password:="12345678" & LCase(Ws.Name), DrawingObjects:=False, Contents:=True, Scenarios:=False, userinterfaceonly:=True
   End If
   Next Ws
End Sub

'Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
'  MsgBox "feuille calculée " & Sh.Name
'End Sub

Voilà, je ne sais pas où introduire la macro du haut.

Rechercher des sujets similaires à "comment bloquer nom feuilles"