IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

sur une feuille protégée, permettre le redimensionnement automatique du tableau [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé
    Femme Profil pro
    reconversion en cours
    Inscrit en
    Juillet 2009
    Messages
    633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : reconversion en cours
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2009
    Messages : 633
    Par défaut sur une feuille protégée, permettre le redimensionnement automatique du tableau
    Bonjour

    J'ai un tableau (créé avec la méthode insérer Tableau) sur une feuille protégée (seules les données du tableau sont déverrouillée). Je voudrais qu'à chaque fois que l'utilisateur écrit sur la dernière ligne du tableau, la ligne suivante (limitée au nb de colonne du tableau) se déverrouille automatiquement afin d'ajouter cette ligne au tableau, comme si la feuille n'était pas protégée.

    Merci de bien vouloir m'aider

  2. #2
    Membre éclairé
    Femme Profil pro
    reconversion en cours
    Inscrit en
    Juillet 2009
    Messages
    633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : reconversion en cours
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2009
    Messages : 633
    Par défaut
    Bonjour,
    Pas beaucoup de réponse...
    J'ai continué à chercher, j'ai trouvé 2 choses.

    La première c'est qu'il semble y avoir un bug dans Excel qui, lorsqu'une feuille est protégée, ne permet plus l'incrémenation automatique d'un tableau structuré (ListObject).

    La deuxième, c'est la solution à mon pb...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    'CORRECTION DU BUG EXCEL :
    'Ajout automatique d'une ligne en fin de tableau sur feuille protégée
    'Déclaration des variables du Tb1
    Dim DebLg1 As Long, DebCol1 As Long, DerLg1 As Long, DerCol1 As Long
    Dim CelAct1 As Range, Plg1 As Range, NewLg1 As Range
    'Affectation des variables
    DebLg1 = Range("Tableau5").Row       '1ère ligne des données
    DebCol1 = Range("Tableau5").Column   '1ère colonne
    DerLg1 = Range("Tableau5").Rows.Count + 3  'Nb Lg avant Tb
    DerCol1 = Range("Tableau5").Columns.Count  'Dernière colonne du Tb
    With ActiveSheet    'avec la feuille active
        'Déclaration des variables du Tb1
        Set CelAct1 = Cells(ActiveCell.Row, ActiveCell.Column)  'Ad de la cell active
        Set Plg1 = Range(Cells(DerLg1, DebCol1), Cells(DerLg1, DerCol1)) 'Ad de la Dern. Lg
        'Si la cellule active se trouve en dernière ligne du Tb
        If Not Application.Intersect(CelAct1, Plg1) Is Nothing Then
            .Unprotect Password:="Feuil"    'Déprotection
        '    on ajoute une ligne au Tb
            .ListObjects("Tableau5").ListRows.Add
    'Autre correction à faire, car sinon les lignes ajoutées n'ont plus l'alternance de couleurs
            'Supprime les MFC existantes
            With Range("Tableau5[#Data]")   'Dans la partie des données
                .FormatConditions.Delete
                'ajout des mise en forme conditionnelle une ligne sur 2
                .FormatConditions.Add Type:=xlExpression, Formula1:="=MOD(LIGNE();2)=1"  'ligne impair
                .FormatConditions.Add Type:=xlExpression, Formula1:="=MOD(LIGNE();2)=0"  'ligne pair
                    'Définit la couleur de fond de la cellule lorsque la condition sera vraie.
                    .FormatConditions(1).Interior.Color = RGB(220, 230, 241) 'bleu ciel
                    .FormatConditions(2).Interior.Color = RGB(255, 255, 255) 'blanc
            End With
            'Protection avec Autorisation : Format Lignes, Insérer Liens Hyp, Tri, Filtre, Modif Objets
            .Protect Password:="Feuil", DrawingObjects:=False, contents:=True, Scenarios:= _
                    True, AllowFormattingRows:=True, AllowInsertingHyperlinks:=True, _
                    AllowSorting:=True, AllowFiltering:=True
        End If
    End With
    End Sub
    j'espère que cela pourra aidé.

  3. #3
    Membre averti Avatar de shynen
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2016
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2016
    Messages : 35
    Par défaut
    Bonjour Mouftie !

    Ajoute résolu à ton topic et merci pour ta solution !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Message Personnalisé sur une feuille protégée
    Par pleskyd dans le forum Excel
    Réponses: 7
    Dernier message: 18/10/2011, 17h48
  2. Erreur 1004 sur une feuille protégée
    Par lilou315 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 22/09/2011, 14h48
  3. Insérer des objets sur une feuille protégée
    Par Gibé2201 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 26/08/2011, 09h30
  4. Pb méthode sort sur une feuille protégée
    Par skan_one dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 21/04/2009, 11h48
  5. Ecrire par programmation sur une feuille protégé !
    Par Freiya dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 31/05/2007, 21h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo