Problème macro et protection de feuille

Bonjour,

J'ai utilisé une macro pour avoir la possibilité de sélectionner plusieurs choix dans une liste déroulante.

Le problème, c'est que quand je protège la feuille, cela ne fonctionne plus.

Y a t il une option à sélectionner ou autre chose à faire pour que cela continue de fonctionner ?

Merci pour votre aide !

avec "userinterfaceonly" ?
protéger la feuille à l'ouverture avec userinterfaceonly à true ?
je crois que je dois essayer un truc comme ça : (mais je ne sais pas du tout où le coder dans mon fichier (débutante en vba ))
Sheet1.Unprotect Password≔"MyWord"
Sheet1.Protect Password≔"MyWord", UserInterfaceOnly≔True

Bonjour, il suffit d'ajouter les lignes de déprotection et de reprotection dans la macro.

'En début de macro
Sheets("Nom de la feuille").unprotect password:="Mot de passe"

....
'En fin de macro
Sheets("Nom de la feuille").protect password:="Mot de passe"

edit oops trop tard

Merci Xmenpl

Comme ça ?

Private Sub Worksheet_Change(ByVal Target As Range)
    'Updated by Extendoffice 2019/11/13
Sheets("test").Unprotect Password:="123"
    Dim xRng As Range
    Dim xValue1 As String
    Dim xValue2 As String
    If Target.Count > 1 Then Exit Sub
    On Error Resume Next
    Set xRng = Cells.SpecialCells(xlCellTypeAllValidation)
    If xRng Is Nothing Then Exit Sub
    Application.EnableEvents = False
    If Not Application.Intersect(Target, xRng) Is Nothing Then
        xValue2 = Target.Value
        Application.Undo
        xValue1 = Target.Value
        Target.Value = xValue2
        If xValue1 <> "" Then
            If xValue2 <> "" Then
                If xValue1 = xValue2 Or _
                   InStr(1, xValue1, ", " & xValue2) Or _
                   InStr(1, xValue1, xValue2 & ",") Then
                    Target.Value = xValue1
                Else
                    Target.Value = xValue1 & ", " & xValue2
                End If
            End If
        End If
    End If
    Application.EnableEvents = True

    With [F6:F482]
        .EntireRow.AutoFit
    End With
Sheets("test").Protect Password:="123"
End Sub

@Xmenpl ou comme ça ?

Private Sub Worksheet_Change(ByVal Target As Range)
    'Updated by Extendoffice 2019/11/13
    Sheets("test").Unprotect Password:="123"
    Dim xRng As Range
    Dim xValue1 As String
    Dim xValue2 As String
    If Target.Count > 1 Then Exit Sub
    On Error Resume Next
    Set xRng = Cells.SpecialCells(xlCellTypeAllValidation)
    If xRng Is Nothing Then Exit Sub
    Application.EnableEvents = False
    If Not Application.Intersect(Target, xRng) Is Nothing Then
        xValue2 = Target.Value
        Application.Undo
        xValue1 = Target.Value
        Target.Value = xValue2
        If xValue1 <> "" Then
            If xValue2 <> "" Then
                If xValue1 = xValue2 Or _
                   InStr(1, xValue1, ", " & xValue2) Or _
                   InStr(1, xValue1, xValue2 & ",") Then
                    Target.Value = xValue1
                Else
                    Target.Value = xValue1 & ", " & xValue2
                End If
            End If
        End If
    End If
    Application.EnableEvents = True

    With [F6:F482]
        .EntireRow.AutoFit
    End With
Sheets("test").Protect Password:="123", UserInterfaceOnly:=True
End Sub

Je comprends pas trop, la différence c'est quoi avec ou sans

UserInterfaceOnly:=True 

?

Si ce n'est que Excel verrouille automatiquement la feuille quand je clique sur la cellule à choix multiple...

Si le code vba enlève la protection mot de passe en début de macro tu n'as plus besoin de "UserInterfaceOnly:=True"

Le problème maintenant c'est l'évenement déclencheur de la macro.

Tu utilises l'évenement "feuille ..change" mais comme ta feuille est protégée il ne peut pas y avoir de changement et donc la macro ne peut

pas se lancer.

Avant de protéger ta feuille tu dois déverrouiller toutes les cellules qui peuvent autorisée à être modifiées. ( clic droit format cellule Protection et décocher )

ensuite reprotéger la feuille.

@Xmenpl

Mes cellules à choix multiples n'étaient pas verrouillées.

Merci vraiment beaucoup. Ca fonctionne super.

oip
Rechercher des sujets similaires à "probleme macro protection feuille"