VBA - mise en protection d'une ligne sous condition

Résolu/Fermé
thorgall9 Messages postés 5 Date d'inscription mardi 22 décembre 2015 Statut Membre Dernière intervention 22 décembre 2015 - 22 déc. 2015 à 11:43
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 22 déc. 2015 à 13:30
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 !


A voir également:

2 réponses

via55 Messages postés 14494 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 26 octobre 2024 2 734
22 déc. 2015 à 13:08
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
thorgall9 Messages postés 5 Date d'inscription mardi 22 décembre 2015 Statut Membre Dernière intervention 22 décembre 2015
22 déc. 2015 à 13:29
Merci !
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
22 déc. 2015 à 13:30
0