demande d aide pour modifier un code vba pour verrouiller cellule

snoopy07

XLDnaute Junior
Bonsoir le forum

il y a plusieurs années on ma donné ce code vba pour verrouiller des cellules suivant une condition
Code:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    Const listeFeuilles As String = "Janv/Févr/Mars/Avri/Mai/Juin/Juil/Août/Sept/Octo/Nove/Déce"
    Dim lig As Long
    If InStr(listeFeuilles, Sh.Name) = 0 Then Exit Sub
    ActiveSheet.Unprotect
    For lig = 5 To Cells(Rows.Count, "F").End(xlUp).Row - 1
        If IsDate(Cells(lig, "F")) And Cells(lig, "D") = 7 Then
         Cells(lig, "H").Resize(1, 3).Locked = True
        
        Else
             Cells(lig, "H").Resize(1, 3).Locked = False
        End If
        
    Next lig
    ActiveSheet.Protect
End Sub
dans mes cellules j avais mis la fonction suivante
=Si(D5=7;0;"")

Aujourd’hui j ai modifier ma fonction pour verrouiller les cellule suivant la fonction suivante
=SI(OU(D5=7;D5=1;B5=1);0;"")

j ai essai de rajouter a mon code

If IsDate(Cells(lig, "F")) And Cells(lig, "D") = 1 Then
Cells(lig, "H").Resize(1, 3).Locked = True

If IsDate(Cells(lig, "F")) And Cells(lig, "B") = 1 Then
Cells(lig, "H").Resize(1, 3).Locked = True
mais ça marche pas

donc je n arrive pas a modifer mon code pour que ca puisse marcher

je voudrais avoir quelque conseils pour reussir a modifier mon code pour que ca marche

merci d avance

cordialement

Snoopy 07
 

JM27

XLDnaute Impliqué
bonjour
peut être

If IsDate(Cells(lig, "F")) And( Cells(lig, "D") = 7 or Cells(lig, "D") = 1 or Cells(lig, "B") = 1) Then
 

snoopy07

XLDnaute Junior
Bonjour JM27 et le forum

merci pour ta réponse
je viens d essayer ton code est cela marche parfaitement

cordialement
Snoopy07
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas