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 :

Problème protection et déprotection de feuille


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 3
    Par défaut Problème protection et déprotection de feuille
    Tout d'abord bonjour tout le monde.

    Je suis débutant en VBA Excel et là, j'ai beau chercher, retourner tous les sites internet, l'aide etc... Je ne trouve pas de réponses à mon problème... Je vais essayer de vous expliquez tout ca assez clairement...

    Je créée un petit programme qui fait en sorte que, quand je clique sur un bouton, je vais chercher une image sur le DD et elle se place automatiquement à un endroit que j'ai déterminé sur la feuille... Pour l'instant tout va bien, c'est plutot facile.

    Le soucis c'est que... Ce code ne fonctionne que si la feuille n'est pas protéger et je préfererai qu'elle le soit

    Donc là j'ai trouver gràce à l'enregistreur de macro Et là je me dis youuuuhhhhouuu super cool ca marche.. Et en fait... Nan

    Le truc qui est particulièrement bizarre c'est que mon code fonctionne très bien lorsque je fais une éxécution pas à pas... mais lorsque j'applique le sub à mon bouton... Ca ne fonctionne plus... Ou ca me met un message d'erreur

    Erreur d'éxécution 1004 :

    La méthode Unprotect de la classe WorkSheet à échoué


    Ou ca me met pas de message d'erreur, mais mon code ne fonctionne qu'à moitié...

    Bon je sais que vous l'attendez tous ^^ Voici ma ligne de code. Bon je l'ai dit unh, je susi débutant je pense que ca vaz être un peu "bourrin" comme code.

    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
    Sub ImageSup()
     
    Dim Image As Variant
    Dim L As Single, T As Single, W As Single, H As Single
    On Error Resume Next
     
    'Je déprotège la feuille déja protéger au préalable
    ActiveSheet.Unprotect
     
    ' Je définis les variables ( c'est bien comme ca qu'on dit ?!? :roll:)
     
    L = Range("C7").Left
    T = Range("C7").Top
    W = 183.75
    H = 40.5
     
    'Je fais apparaitre la fenêtre magique qui me demande de choisir une zoli image
     
    Image = Application.GetOpenFilename("Image Files(*.jpg),*.jpg")
     
    ' Une petite conditionelle : Si l'utilisateur se plante ca renvoit à la fin de la macro. Sinon ca retire l'image mis précédemment, ca rajoute celle que je veux avec les variables définies précédemment. 
     
    If Image <> False Then
     
     
     
    ActiveSheet.Shapes("TOP").Delete
    Feuil1.Shapes.AddPicture(Image, True, True, L, T, W, H).Select
    Selection.Name = "TOP"
     
     
    End If
     
    'Je reprotège ma feuille histoire qu'on puisse pas rebouger l'image.
    ActiveSheet.Protect
     
    End Sub


    voilà je suis dans le caca quoi ! Si vous pouviez m'aider ca serait suuuuuper sympa.

    Bonne journée à tous. Et à bientôt.


    Un petit Edit : Je viens de remarquer un autre soucis... Lorsque je clique sur certains de mes boutons... Leurs mise en forme change, la police du texte à l'interieur également et ca rend mon programme quasiment illisible... C'est embetant.

    Je n'ai pas encore fais de recherche à ce sujet mais je préfère vous posez directement la question desfois que j'ai des difficultés à trouver. Si vous pensez que la solution est évidente et que je devrais trouvez sans problème... Ne répondez tout simplement pas. Je vais de ce pas effectuer quelques recherche.

  2. #2
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Bonjour,
    Plusieurs possibilités sont envisageable.
    1°) Etant dans ta macro, c'est pas sur que la feuille active soit la bonne.
    2°) La feuille a peut-être été protégé avec mot de passe, auquel cas tu doit la déprotégé avec mot de passe (voir l'aide)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1°) Sheets("NomFeuille").select
    A+

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 3
    Par défaut
    Problème n° 1 :Merci beaucoup LeForestier d'avoir accordé du temps pour essayer de répondre à ma question... Cependant

    1\ Non mon boutton se situe dans la feuille concernée donc je crois que que Activesheet.Unprotect et bien le bon code à utiliser... J'ai tout de même essayer de faire selectionner la feuille au préalable par la commande que tu m'as indiqué mais... Ca ne change pas grand chose au problème.

    2\ Pas de mot de passe sur ma feuille ni sur mon classeur pour le moment. je m'occuperai de ce problème plus tard.

    Donc ma question est malheureusement toujours sans réponse... Le truc qui est réellement bizarre c'est que mon code fonctionne vraiment très très bien lorsque je l'applique pas à pas avec le Activesheet.Unprotect mais ne fonctionne pas lorsque j'active par la macro. Et fonctionne dans les deux cas sans la commande unprotect... Bref je me tords un peu les neurones là !
    --------------------------------------------------------------------------


    Le Problème de Police à l'intèrieur des boutons s'est résolu de lui même après une sauvegarde puis un chargement... Bizarre quand même.

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Oise (Picardie)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 95
    Par défaut
    Bonjour,

    as-tu bien mis tout ton code ? car effectivement j'ai éssayé avec le code que tu as posté et ça marche.
    Pas de message d'erreur

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 3
    Par défaut
    Désolé de ne pas avoir répondu plus tôt mais je n'étais pas disponible.

    Non mon code ne fonctionne toujours pas ! Y a t'il un soucis d'incompatibilité avec ActiveSheet.Unprotect et Excel 97 ?

    C'est certainement ça...

    Merci à vous de vous être penché sur mon cas !

    bonne journée et à bientôt.

Discussions similaires

  1. [Toutes versions] Macro Protection et déprotection de feuilles
    Par lenul78570 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 22/03/2010, 16h44
  2. Problème de déprotection des feuilles
    Par Drost dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 11/10/2007, 16h33
  3. [XHTML] XHTML : problème de chargement de la feuille de styles
    Par cristolb dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 13/01/2006, 23h40
  4. [Excel] Problème avec l'accès aux feuilles et aux cellules
    Par bl00df0x dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 30/09/2005, 14h21
  5. [VB.NET] Problème d'affichage de pls feuille !!
    Par omarfla dans le forum Windows Forms
    Réponses: 4
    Dernier message: 28/01/2005, 01h17

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