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 :

filtre automatique sur feuille protégée


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 98
    Points : 55
    Points
    55
    Par défaut filtre automatique sur feuille protégée
    bonsoir,

    je rencontre un problème déjà identifié et résolu , vous allez me dire, pourquoi y post le fou

    bah tout simplement que j'ai trouvé chaussure à mon pied !!

    je souhaite protéger une feuille contenant des filtres automatiques, dont certaines données sont verrouillées

    voila une solution proposée par Tirex28

    Citation Envoyé par tirex28 Voir le message
    Bonsoir,

    Ceci te permet d'utiliser directement les menus du filtre automatique dans une feuille protégée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub Workbook_Open()
        With Worksheets("BDD")
            .Unprotect
            .EnableAutoFilter = True
            .Protect contents:=True, userinterfaceonly:=True
        End With
    End Sub
    Cordialement,

    Tirex28/
    j'ai dû rater un épisode !! car cela ne fonctionne pas

    je poste mon fichier de test

    Merci pour vos avis
    Fichiers attachés Fichiers attachés

  2. #2
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Bonjour,

    Le code est mal placé, il doit être placé dans ThisWorkBook

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 98
    Points : 55
    Points
    55
    Par défaut
    Bonjour Fring,

    j'ai placé mon code comme tu me le conseilles dans ThisWorkBook, mais cela ne fonctionne pas

    je me forme sur le tas et sur le tard, mais c'est en forgeant qu'on devient forgeron et c'est en limant qu'on devient limeron, donc ne perdons pas courage

    j'ai sur la base du fichier test joint mon fichier définitif qui possède une macro de création de ligne qui fonctionne correctement avec un bouton placé sur la ligne des titres et donc qui est inaccessible lorsque la feuille est protégée

  4. #4
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    J'ai oublié un petit détail

    Il y a un passager clandestin dans le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub Workbook_Open()
    
    End Sub <--- de trop
       With Worksheets("filtre auto")
         .Unprotect
         .EnableAutoFilter = True
         .Protect contents:=True, userinterfaceonly:=True
       End With
    End Sub

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 98
    Points : 55
    Points
    55
    Par défaut
    Bonjour Fring,

    Est-ce que le fichier fonctionne sur ton PC ?
    car j'ai effectivement retiré l'End Sub clandestin et rien n'a changé !!

  6. #6
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    arf...en effet la protection ne fonctionne que sur la dernière colonne du filtre, la colonne "N°"...

    Là je vois pas comme ça...je vais cuisiner le fichier pour qu'il m'avoue tout

    aaah il a vite lâcher le morceau le bougre
    En fait dans ton fichier tu as uniquement verrouillé les cellules de la colonne N°

    Donc :
    - ôte la protection de la feuille (menu Outils / protection)
    - sélectionne toutes les cellules du tableau
    - dans le menu Format / Cellule / onglet Protection --> tu coches Verrouillée
    - enregistre et ferme le fichier

    A sa réouverture ça devrait le faire

  7. #7
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 906
    Points : 8 539
    Points
    8 539
    Par défaut
    SAlut
    Evidement que ça marche pas [Edit] <- J'aurais du être plus humble....[/Edit]

    Il faut pas que tu crée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private Sub Workbook_Open()
    dans Feuil1 ... il faut utiliser ThisWorkBook_Open ! qui existe déjà dans le "fichier" ThisWorkBook (dans VBA en dessous de toutes les feuilles)

    [Edit2] Je vais quand meem laissé l'image le temps que notre ami la vois, par ce qu'en relisant letopic, je suis pas si sur que ca est ete fait comme ca [/Edit2]

    A++
    Qwaz

  8. #8
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Citation Envoyé par Qwazerty Voir le message
    SAlut
    Evidement que ça marche pas

    Il faut pas que tu crais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private Sub Workbook_Open()
    dans Feuil1 ... il faut utiliser ThisWorkBook_Open ! qui existe déjà dans le "fichier" ThisWorkBook (dans VBA en dessous de toutes les feuilles)

    A++
    Qwaz
    oui oui ça c'est fait (message n°2)

  9. #9
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 906
    Points : 8 539
    Points
    8 539
    Par défaut
    autant pour moi ... ben voila une boulet avant d'aller au lit
    [Edit]Quoique j'ai remis l'image, par ce que si on lit les messages suivants le n°2, vu qu'il n'a jamais eu de breack sur son erreur (le End Sub qui trainait) je pense que ça veux dire que le code ne s'exécutait pas au lancement Tant qu'a dire une connerie autant que j'aille jusqu'au bout ... mais je flaire quand même un truc :p[/Edit]
    ++
    Bonne nuit
    Qwaz

  10. #10
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Merci Qwaz, je me sens moins seul, j'en dit à longueur de journée des conneries moi

    En fait le code s'executait bien à l'ouverture du classeur mais vu que...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Workbook_Open()
    il est plein de vide...
    End Sub
    il ne se passait rien

    Au cas où...je joins le fichier qui fonctionne, le filtre est actif et les cellules du tableau sont bien verrouillées.

    Pièce jointe 25913

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 98
    Points : 55
    Points
    55
    Par défaut
    Salut Qwaz , salut Fring

    J'ai bien compris pour le code =>dans ThisWorkBook

    certainement un copier coller avec doigt fourchu pour le End Sub <--- de trop

    en fait le blocage provient uniquement de l'utilisation du nom du fichier With Worksheets("filtre auto") comme dans l'exemple de Tirex28 voir message N°1 au lieu de la feuille 1 With sheets(1) si vous pouvez m'apporter un éclaircissement pour ma maigre culture Excelistique

    Message N° 6
    aaah il a vite lâcher le morceau le bougre
    En fait dans ton fichier tu as uniquement verrouillé les cellules de la colonne N°
    Bahhh c'est ce que je cherche à faire
    Message N° 1
    je souhaite protéger une feuille contenant des filtres automatiques,
    dont certaines données sont verrouillées
    je t'en veux pas pour autant fring les longues veillées devant le rectangle bleu pour des tordus comme ma pomme, à la longue on a droit à des passages à vide, pas vrai Qwaz

    sinon, le fichier modifier (cellules de données N° uniquement verrouillées) fonctionne

    Salut et merci
    Fichiers attachés Fichiers attachés

  12. #12
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 906
    Points : 8 539
    Points
    8 539
    Par défaut
    SAlut
    Attention je crois bien que tu mélange WorkBook et Worksheet.

    WorkBook:
    c'est ton fichier excel, celui ci peut être appeler par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Workbooks("filtre auto.xls")
    Dans tous les fichier ouvert on sélectionne 'Filtre auto.xls'

    WorkSheet:
    ça représente tes onglet, on peut dire sheet aussi c'est pareil, on appel donc un onglet.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    'Soit par son nom
    worksheets("Feuil1")...
     
    'Soit par sa position dans le classeur
    WorkSheets(1)... 'fait référence au 1er onglet a gauche
    Voila je pense que c'est complet

    a++
    Qwaz

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 98
    Points : 55
    Points
    55
    Par défaut
    Salut Qwaz,

    je ne suis pas du tout anglophone

    mais je me soigne, je suis dans les tutoriaux pour améliorer toutes ces lacunes

    je vous remercie encore pour vos remarques constructives

    je clôture là cette discution

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

Discussions similaires

  1. [XL-2007] filtre automatique sur 2 feuilles
    Par amauri dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 16/07/2012, 18h22
  2. Réponses: 5
    Dernier message: 29/07/2011, 14h09
  3. Filtre automatique sur date défaillant
    Par cuterate dans le forum Excel
    Réponses: 2
    Dernier message: 18/08/2009, 15h47
  4. Fusion cellule sur feuille protégée
    Par hlander dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 13/02/2009, 13h33
  5. Libérer colonnes sur feuille protégée
    Par karenna dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 31/03/2008, 10h16

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