Verrouiller/déverrouiller cellule selon la couleur Le sujet est résolu

Y compris Power BI, Power Query et toute autre question en lien avec Excel
C
Coshii
Jeune membre
Jeune membre
Messages : 15
Inscrit le : 5 septembre 2017
Version d'Excel : 2016 FR

Message par Coshii » 4 octobre 2017, 11:59

Bonjour,

étant débutant en VBA je viens vers vous afin d'avoir votre aide

J'aimerais crée une macro qui verrouille une cellule selon sa couleur

en gros je gère un tableau de maintenance ou des techniciens doivent rentrée leur initial dans des case rouge (RGB (255,0,0)) et s'ils la remplisse la cellule passe au vert (RGB(0,255,0))

Ma feuille est verrouillé avec le mot de passe "ADMINTECH" sauf les case rouge, mais j'aimerais que une fois que la cellule passe au vert elle se verrouille aussi afin que le technicien ne puisse pas modifié la cellule sauf en déverrouillant la feuille

Merci d'avance :)

jonathan.
M
MFerrand
Fanatique d'Excel
Fanatique d'Excel
Messages : 17'171
Appréciations reçues : 446
Inscrit le : 20 juillet 2015
Version d'Excel : 2010 FR

Message par MFerrand » 4 octobre 2017, 12:29

Bonjour,

On suppose que la cellule est déverrouillée et rouge, la feuille protégée.
A la saisie dans une cellule rouge, procédure Change qui se déclenche :
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Interior.Color = vbRed Then
        Me.Unprotect "ADMINTECH"
        Target.Interior.Color = vbGreen
        Target.Locked = True
        Me.Protect "ADMINTECH"
    End If
End Sub
Elle déprotège la feuille, met la cellule en vert, verrouille la cellule, reprotège la feuille.
Procédure à placer dans le module de la feuille.

Cordialement.
C
Coshii
Jeune membre
Jeune membre
Messages : 15
Inscrit le : 5 septembre 2017
Version d'Excel : 2016 FR

Message par Coshii » 4 octobre 2017, 13:25

MERCI !

c'est exactement ce que je cherchais !

je passe le sujet en résolue encore merci =)
O
Okeaz
Nouveau venu
Nouveau venu
Messages : 1
Inscrit le : 18 février 2020
Version d'Excel : 2010

Message par Okeaz » 18 février 2020, 15:33

Bonjour,

Je voudrais presque faire la même chose mais le bout de code ne fonctionne pas correctement chez moi. Il change la couleur (et donc le verrouillage) de cellule qui ne devrait pas toucher.

Voilà lorsque je rentre le mot "ok" dans une cellule, ça me grise la ligne qui contient cette cellule (merci la mise en forme conditionnelle). Je voudrais également que ma ligne soit verrouillée. J'ai cru comprendre que pour ça il fallait obligatoirement passé par du VBA mais je ne connais pas du tout.

Quelqu'un pourrait m'aider à y voir plus clair ? Merci
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message