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 :

Insertion image feuille ou classeur protégé


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 36
    Par défaut Insertion image feuille ou classeur protégé
    Bonjour,

    Alors autant vous prévenir le VBA est vraiment pas ma spécialité, je suis plutôt développeur web.

    Mais j'ai besoin d'utiliser Excel.

    J'ai réalisé une feuille excel avec des calculs, je permet aux utilisateurs de saisir uniquement dans certaines cellule, les autres étant verrouillés. Jusqu'à la pas de pb. Mais ou il y a pb, c'est qu'ils doivent pouvoir ajouter une ou n images sur la feuille. En standard apparement c'est pas possible ou alors j'ai loupé quelque chose.

    Donc je voulais réaliser une macro ( ou plutôt copier une macro ou des macros existantes) qui insère une image sur ma feuille avec la statut de non verrouillé.

    J'ai trouvé et modifié çà :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Public Sub insere_image()
     
    Dim ficimg As Variant
        ficimg = Application.GetOpenFilename(".jpg,*.jpg", , "Choisissez l'image")  ' 
        ActiveSheet.Pictures.Insert(ficimg).Select ' insertion
     
        With Selection
            .PrintObject = True             
            .Placement = xlMoveAndSize  
            .Locked = False
        End With
     
     
    End Sub
    Cette macro fonctionne tant que la feuille n'est pas protégé.

    Après j'ai un message d'erreur :

    La methode select de la classe Picture a echoué.


    pouvez vous m'aider

    Merci

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 36
    Par défaut
    Désolé de vient de trouver :

    voici donc le résultat :

    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
    Public Sub insere_image()
     
        Dim ficimg As Variant
     
        ActiveSheet.Unprotect "XXX"
     
        ficimg = Application.GetOpenFilename(".jpg,*.jpg", , "Choisissez l'image")  
        ActiveSheet.Pictures.Insert(ficimg).Select ' insertion
     
        With Selection
            .Locked = False
            .PrintObject = True            
            .Placement = xlMoveAndSize      
        End With
        ActiveSheet.Protect "XXX"
     
    End Sub
    J'ai juste une petite question encore, lorsque la fenetre pour choisir l'image apparait si je fais annuler, j'ai un message d'erreur :

    impossible de lire la propriété insertde la classe pictures

  3. #3
    Membre éclairé Avatar de casavba
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    464
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 464
    Par défaut
    une petite gestion d'erreur suffira :

    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
    Public Sub insere_image()
     
        Dim ficimg As Variant
     
        ActiveSheet.Unprotect "XXX"
     
        On Error Resume Next
        ficimg = Application.GetOpenFilename(".jpg,*.jpg", , "Choisissez l'image")
     
        ActiveSheet.Pictures.Insert(ficimg).Select ' insertion
     
        With Selection
            .Locked = False
            .PrintObject = True
            .Placement = xlMoveAndSize
        End With
        ActiveSheet.Protect "XXX"
     
    End Sub

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 36
    Par défaut
    Merci beaucoup c'est parfait......

    Une remarque tout de même, lorsque la feuille est protégé je peux tout de même accéder aux macros et donc voir le mot de passe pour Oter la protection.

    J'ai encore du louper quelque chose c'est pas possible que se soit ainsi.

  5. #5
    Membre éclairé Avatar de casavba
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    464
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 464
    Par défaut
    Bien sûr.

    N'oublie pas le tag

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 36
    Par défaut
    Que veux tu dire par bien sur ?

  7. #7
    Membre éclairé Avatar de casavba
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    464
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 464
    Par défaut
    quand tu protèges ta feuille Excel avec un mot de passe, le projet VBA reste accessible sauf si tu veux le protéger lui aussi.

    Donc, pour répondre à ta question ---> tu peux accéder à ton code vba même si la feuille est protégée.
    Maintenant, si tu veux protéger ton code par un mot de passe, c'est possible aussi.

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 36
    Par défaut
    Merci je vais chercher

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

Discussions similaires

  1. Insertion de feuilles dans un classeur
    Par issamk2000 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 26/06/2008, 01h09
  2. [VBA-E] insertion images existante dans le classeur
    Par Ania dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 27/03/2006, 23h50
  3. probleme insertion images
    Par kojima dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 29/12/2005, 22h30
  4. [Excel][POI] insertion image
    Par noOneIsInnocent dans le forum Documents
    Réponses: 7
    Dernier message: 29/09/2005, 17h04
  5. [javascript] problème insertion image
    Par Pwill dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 18/05/2005, 16h12

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