Verouillage cellules en fonction de la date du jour excel 2013

Résolu
marcelhenri -  
gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour à tous,

En simplifiant, j'ai un tableau mensuel comportant 31colonnes, comme le nombre de jours dans le mois. Je souhaiterais, en VBA, en fonction de la date du jour, verrouiller les colonnes précedantes:
Ex1 : nous somme le 12 et je veux verouiller les colonnes(jours) de 1 à 10
Ex2: nous somme le 25 et je veux verouiller les colonnes(jours) de 1 à 23
Merci de votre aide.

1 réponse

  1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    Bonjour,

    Comme je suppose que tu as plusieurs mois, cette macro à mettre dans Thisworkbook devrait répondre à ta demande :
    Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    Dim col As Long
        With ActiveSheet
            .Unprotect
            .Cells.Locked = False
            For col = 1 To Day(Date) - 1
                .Columns(col).Locked = True
            Next col
            .Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
            .EnableSelection = xlUnlockedCells
        End With
    End Sub
    
    0
    1. marcelhenri41 Messages postés 2 Statut Membre
       
      Merci gbinforme pour la réponse.
      Et sans vouloir abuser, si sur la colonne en question , je ne veux verouller que les lignes de 5 à 20par exemple?
      0
    2. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
       
      Bonsoir,
      Seule la ligne de verrouillage change :
      Private Sub Workbook_SheetActivate(ByVal Sh As Object)
      Dim col As Long
          With ActiveSheet
              .Unprotect
              .Cells.Locked = False
              For col = 1 To Day(Date) - 1
                  .Cells(5, col).Resize(16, 1).Locked = True
              Next col
              .Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
              .EnableSelection = xlUnlockedCells
          End With
      End Sub
      0
      1. marcelhenri41 Messages postés 2 Statut Membre > gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention  
         
        A grand MERCI gbinforme., tu me rends la un grand service.
        0
    3. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
       
      Merci du retour et bonne fin de soirée.
      0