Cellules protégées automatiquement

Résolu
Bonjour,

Sur une colonne, des employés doivent entrer les heures supplémentaires effectuées.

A1 = 2h00 B1 = VALIDÉ
A2 = 1h30 B2 = NON VALIDÉ
A3 = 1h00 B3 = NON VALIDÉ

Une fois que j'ai validé ces heures, j'écris dans la colonne "B" VALIDÉ.

Est-il possible que la cellule des heures se protège automatiquement, une fois que j'ai inscrit VALIDÉ ?

Le but est d'éviter que les heures soient modifées une fois qu'elles ont été validée.

Merci !

6 réponses

  1. Contributeur
    Salut le Forum

    Medic911, c'est bien de poser des questions.

    Mais fait l'effort de mettre tes 2 autres questions en résolu et de remercier pour les réponses.

    Lien #1 : Ta premier question

    Lien #2 : Ta deuxième question

    Pour le moment, je me garde de te fournir une réponse. . .
    Mytå
    Versions installées [MsProject 2003(FR), Excel 2003-2007(FR)]
    0
    1. Contributeur
      Ma réponse : NON !

      Mais au lieu de taper "Validé", tu as presque aussi vite fait de déprotéger la feuille, de verrouiller la cellule de la colonne A et de reprotéger !
      C'est simple et efficace.

      Mais peut-être qu'un membre de CCM connaissant VBA pourra te mettre ça sous forme de macro ...
      0
      1. Bonjour,

        Essaie ce code qui est à copier dans le module de ta feuille concernée:

        Private Sub Worksheet_Change(ByVal Target As Range)
        If Target.Column = 2 And Target.Offset(0, 0) = "VALIDE" Then
        ActiveSheet.Unprotect
        Target.Offset(0, -1).Select
        Selection.Locked = True
        ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
        ElseIf Target.Column = 2 And Target.Offset(0, 0) <> "VALIDE" Then
        ActiveSheet.Unprotect
        Target.Offset(0, -1).Select
        Selection.Locked = False
        ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
        End If
        End Sub

        Précision: Il faut préalablement désactiver le Verrouillage des cellules de toute la page.

        Bonne journée.
        0
        1. Contributeur
          Alors, Medic911, ta question est résolue, ou pas ?
          0
          1. Contributeur
            Re le forum

            Son problème a été résolu sur un autre forum avec cette macro (Colonne H)
            (Le verrouillage des cellules doit être désactivé au préalable)

            Sub Validation()
            ' Touche de raccourci du clavier: Ctrl+a
            '
            With ActiveCell
              If .Locked Then Exit Sub
                If .Column = 8 Then
                    .Value = "Validé"
                    ActiveSheet.Unprotect
                    Range(Cells(.Row, 1), Cells(.Row, 6)).Locked = True
                    Cells(.Row, 8).Locked = True
                    ActiveSheet.Protect
                End If
            End With
            
            End Sub
            

            Mytå

            0
            1. Contributeur
              Merci. Je bascule donc en "Résolu".
              0