VBA - mise en protection d'une ligne sous condition

Résolu
thorgall9 Messages postés 5 Statut Membre -  
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je suis confronté à un petit soucis et ne voit pas comment le résoudre.
Ce que je souhaite obtenir :

Si le texte introduit dans une cellule de la colonne A (2 choix possible : Actif et Non actif) est "Non Actif", j'aimerais que les cellules de le colonne B à Z de la ligne concernée soient bloquées en écriture.

Si on modifie la valeur de la colonne A en Actif, on peut à nouveau écrire dans les cellules de la colonne B à Z

Grand merci pour l'aide !

2 réponses

  1. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonjour

    La feuille étant protégée, macro à mettre dans le worksheet de la feuille (ALT + F11 pour ouvrir l'éditeur - double-clic sur la feuille concernée dans l'arborescence - Copier coller la macro )
    Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column > 1 Then Exit Sub
    ActiveSheet.Unprotect
    If Target.Value = "Non actif" Then
     Range("B" & Target.Row & ":Z" & Target.Row).Locked = True
     End If
     If Target.Value = "Actif" Then
     Range("B" & Target.Row & ":Z" & Target.Row).Locked = False
     End If
     ActiveSheet.Protect
    End Sub


    Cdlmnt
    Via
    0
    1. thorgall9 Messages postés 5 Statut Membre
       
      Merci !
      0