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 :

Protéger un classeur et verrouiller les autorisations pour futures utilisations


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Femme Profil pro
    Inscrit en
    Juin 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2013
    Messages : 9
    Par défaut Protéger un classeur et verrouiller les autorisations pour futures utilisations
    Bonjour à tous,

    J'ai un fichier xls utilisé par plusieurs personnes: un tableau dont certaines colonnes sont verrouillées et d'autres libres pour permettre l'encodage (dans mon exemple, les colonnes verrouillées contiennent des lettres, les colonnes libres des nombres). J'utilise des filtres automatiques dans toutes les colonnes et un bouton auquel a été assignée une macro afin de réafficher en un clic toutes les données du tableau. Lorsque j'ai verrouillé la feuille du classeur par mot de passe, j'ai donc veillé à cocher les cases permettant l'utilisation des filtres etc.

    Lorsque je ferme mon document et que je l'ouvre, il reste en mode protégé mais n'autorise plus rien du tout, ce qui signifie qu'il faut à chaque fois: déverrouiller + re-verrouiller la feuille en cochant les cases appropriées.
    J'ai donc enregistré une nouvelle macro (raccourci: ctrl+a) pour faire l'opération automatiquement mais je dois saisir mon mot de passe (abc). Or, je voudrais limiter au maximum les opérations manuelles pour ne pas rendre les choses + compliquées et éviter les critiques des personnes devant encoder dans ce tableau!

    Je joints les 2 exemples: le doc original et celui avec la macro mais qui n'est pas encore la solution idéale à mes yeux.

    N'est-il pas possible de simplement sauvegarder ces autorisations et de ne plus devoir y toucher?

    Un tout grand merci d'avance au(x) courageux qui se pencheront sur la question

    Zab
    Fichiers attachés Fichiers attachés

  2. #2
    Membre confirmé
    Homme Profil pro
    ...
    Inscrit en
    Novembre 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : ...
    Secteur : Transports

    Informations forums :
    Inscription : Novembre 2009
    Messages : 18
    Par défaut
    Bonjour

    Dans Thisworkbook essai en modifiant comme ceci.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Private Sub Workbook_Open()
     
    With Worksheets("Sheet1")
    .Protect "abc", DrawingObjects:=True, Contents:=True, Scenarios:=True, userInterfaceOnly:=True, AllowFiltering:=True
    End With
     
    End Sub
    @+

  3. #3
    Membre habitué
    Femme Profil pro
    Inscrit en
    Juin 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2013
    Messages : 9
    Par défaut
    Bonjour ThebigSteph et merci beaucoup pour ta réponse!
    Et oui, je suis une débutante en macro, j'ai encore beaucoup à apprendre...!

    C'est parfait, c'est exactement ce que je voulais :-)

    Pour que ce soit vraiment bien: est-ce que tu sais comment je peux éviter le message d'erreur qui apparaît lorsque l'on clique sur le bouton-filtre de remise à zéro alors qu'aucun filtre n'a été préalablement sélectionné? Voici le message obtenu:

    "erreur d'exécution 1004: la méthode ShowAllData de la classe worksheet a échoué", je dois cliquer sur "End" pour l'ignorer.
    Le must serait que rien ne se passe lorsque l'on clique sur le bouton pour rien...

    J'espère que ma demande est suffisamment claire, sinon, n'hésite pas ;-)

    A+

  4. #4
    Membre confirmé
    Homme Profil pro
    ...
    Inscrit en
    Novembre 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : ...
    Secteur : Transports

    Informations forums :
    Inscription : Novembre 2009
    Messages : 18
    Par défaut
    Re

    Essai avec ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Sub ShowAllData()
    On Error Resume Next
    Worksheets("sheet1").ShowAllData
    On Error GoTo 0
    End Sub
    Bonne journée

  5. #5
    Membre habitué
    Femme Profil pro
    Inscrit en
    Juin 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2013
    Messages : 9
    Par défaut
    Re salut,

    Un tout grand merci pour ta réponse, ça maaaarche :-) Super!

    Je vais tester cela dans mon fichier original, à bientôt pour une prochaine recherche de solution ;-)

    Bye!

  6. #6
    Membre habitué
    Femme Profil pro
    Inscrit en
    Juin 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2013
    Messages : 9
    Par défaut
    Me revoilà, simplement pour confirmer que tout fonctionne à merveille maintenant, merci pour l'aide qui m'a été offerte, décidément, j'aime de +en+ ce forum :-)

    Ce fut plus rapide que le département IT de la boîte pour laquelle je travaille :-) dorénavant, je sais où aller en cas de problème

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 09/08/2014, 12h31
  2. Je n'ai pas les autorisations pour ..
    Par tt79 dans le forum Access
    Réponses: 1
    Dernier message: 27/11/2009, 16h12
  3. Réponses: 4
    Dernier message: 10/04/2009, 12h10

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