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 -
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 !
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:
- VBA - mise en protection d'une ligne sous condition
- Partager photos en ligne - Guide
- Mise en forme conditionnelle excel - Guide
- Mètre en ligne - Guide
- Mise a jour chrome - Accueil - Applications & Logiciels
- Mise en forme tableau word - Guide
2 réponses
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 )
Cdlmnt
Via
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
thorgall9
Messages postés
5
Statut
Membre
Merci !