Empêcher la modification d'une ligne

Résolu
andy2092 Messages postés 78 Date d'inscription   Statut Membre Dernière intervention   -  
danielc0 Messages postés 2211 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'utilise une ligne (B à Z) dans mon fichier qui contient des formules et elle me sert de référence pour ajouter une nouvelle ligne. J'aimerai que l'utilisateur ne puisse modifier ou supprimer cette ligne. Est-ce possible avec une macro ou autres options ?

Merci

1 réponse

  1. danielc0 Messages postés 2211 Date d'inscription   Statut Membre Dernière intervention   294
     
    Bonjour,

    Déverrouille toutes les cellules du classeur, verrouille les cellules de ta ligne et protège la feuille. Si tu veux plus de précisions, dis-le.

    Cordialement.

    Daniel
    0
    1. andy2092 Messages postés 78 Date d'inscription   Statut Membre Dernière intervention  
       
      C'est bon merci !
      0
    2. andy2092 Messages postés 78 Date d'inscription   Statut Membre Dernière intervention  
       
      Par contre petit problème que je viens d'identifier ! J'ai des données groupées qui ne peuvent être masquées ou affichées quand je protège la feuille. Est-ce possible d'autoriser cette action ?
      0
    3. andy2092 Messages postés 78 Date d'inscription   Statut Membre Dernière intervention  
       
      J'ai essayé ce code que j'ai trouvé sur le net :

      Private Sub Workbook_Open()
      With Worksheets("Feuil1")
      .EnableAutoFilter = True
      .EnableOutlining = True
      .Protect Contents:=True, Password:="Toto", UserInterfaceOnly:=True

      Il permet d'utiliser les données groupées (+/-) sur une feuille protégée.

      Cependant quand je rajoute une nouvelle ligne, je ne peux pas la modifier. Voici le message que je reçois quand j'essaie de modifier la nouvelle ligne :



      Voici le code de mon bouton pour insérer une nouvelle ligne :

      Sub Ajout_ligne()
      '
      ' Ajouter une ligne

      Application.EnableEvents = False
      Dim x As Long
      x = ActiveCell.Row
      Range("ligne_vierge").Copy
      Rows(x).Select
      Selection.Insert Shift:=xlDown
      Application.EnableEvents = True

      End Sub

      Faut-il que je rajoute une fonction dans le code "Workbook_Open" ?
      0
      1. danielc0 Messages postés 2211 Date d'inscription   Statut Membre Dernière intervention   294 > andy2092 Messages postés 78 Date d'inscription   Statut Membre Dernière intervention  
         
        Mets :

        .Protect Contents:=True, Password:="Toto", AllowInsertingRows:=True, UserInterfaceOnly:=True


        au lieu de :
        .Protect Contents:=True, Password:="Toto", UserInterfaceOnly:=True
        0