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 avec un nom [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 473
    Points : 493
    Points
    493
    Par défaut Insertion image avec un nom
    Bonjour,

    je voudrais insérer une image à partir d'un fichier mais en renommant celle-ci par "TOTO" par exemple, est-ce possible?

    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
    Private Sub bouton_titre2_Click()
        Dim Image As Variant
        Dim L As Single, T As Single, W As Single, H As Single
     
        L = Range("c6").Left
        T = Range("c6").Top
        W = Range("c6").Width
        H = Range("c6").Height
     
        Image = ("C:\Users\LOGOS\BIBI.jpg")
     
        If Image <> False Then
            Feuil1.Shapes.AddPicture Image, True, True, L, T, W, H
            'Selection.Name = "TOTO"
     
        End If
    End Sub
    Cordialement,

    Jijie

  2. #2
    Membre émérite
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2011
    Messages
    1 503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2011
    Messages : 1 503
    Points : 2 657
    Points
    2 657
    Par défaut
    Bonjour jijie,

    La ne pourrait-elle pas t'aider ?
    Ici, par exemple.

    Reviens vers moi pour toute difficulté.

    Cordialement,
    Kimy
    La logique :
    • Plus ya de gruyère, moins ya de gruyère.
    • Plus tu pédales moins vite, moins tu avances plus vite.
    Plusoyer les réponses pertinentes et n'oublier pas de résolver en fin de post !

  3. #3
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Tu crées une variable (par exemple nommée MaShape) de type Shape.
    Tu mets un "MaShape =" devant le Add introduisant ton image, comme ça, tu conserves le lien vers cette image.
    Ensuite, il ne te reste plus qu'à utiliser la propriété Name avec ta variable pour changer le nom de ton image.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 473
    Points : 493
    Points
    493
    Par défaut
    Bonjour à vous deux,

    Menhir: Comment je place cette variable devant le Add ? Tu pourrais me donner la ligne? et comment je modifie le nom?

    Retenir le nom dans une variable ne m'intéresse pas car si le fichier est fermé entre les deux, je ne pourrais plus supprimer l'image puisque la variable sera = à "" !!

    C'est pourquoi quel que soit l'image collé sur la feuille, je voudrais qu'elle porte un nom identique (sur la feuille)!

    Merci
    Cordialement,

    Jijie

  5. #5
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Citation Envoyé par jijie Voir le message
    Comment je place cette variable devant le Add ?
    Set MaVariable = ....
    Comme pour toute affectation d'un objet à une variable.

    comment je modifie le nom?
    Regarde dans l'aide VBA d'Excel les membres de l'objet Shape et en particulier la propriété Name.

    Retenir le nom dans une variable ne m'intéresse pas car si le fichier est fermé entre les deux, je ne pourrais plus supprimer l'image puisque la variable sera = à "" !!
    Tu veux supprimer l'image ??? C'est nouveau... Jusqu'à présent, tu voulais juste la renommer.
    Je ne parle pas de retenir le nom mais de conserver un lien vers l'objet pour ne pas être obligé de le rechercher après l'utilisation de ton Add, histoire de pouvoir changer son nom dans la ligne suivante.

    Autre chose qui m'étonne dans ton code : je ne vois pas du tout ce que tu espères obtenir avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        Image = ("C:\Users\LOGOS\BIBI.jpg")
         If Image <> False Then
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  6. #6
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    Ou directement

    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
    Dim L As Single, T As Single, W As Single, H As Single
    Dim Image As String
     
    Image = "C:\Users\hp\Pictures\armoiries3.jpg"
     
    If Dir(Image) <> "" Then
        With Feuil1
            With .Range("C6")
                L = .Left
                T = .Top
                W = .Width
                H = .Height
            End With
            .Shapes.AddPicture(Image, True, True, L, T, W, H).Name = "TOTO"
        End With
    End If
    Cordialement.
    J'utilise toujours le point comme séparateur décimal dans mes tests.

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 473
    Points : 493
    Points
    493
    Par défaut
    Et bien oui merci Mercatog , c'est bien ça.
    je te rereremercie !!
    Cordialement,

    Jijie

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

Discussions similaires

  1. [WD-2007] publipostage word insertion image avec une condition
    Par lillyb dans le forum Word
    Réponses: 2
    Dernier message: 21/04/2009, 13h07
  2. insertion image avec une macro pour word
    Par bricoleur76 dans le forum VBA Word
    Réponses: 3
    Dernier message: 12/03/2009, 22h14
  3. Insertion image avec option Insérer et lier
    Par astrium dans le forum Word
    Réponses: 4
    Dernier message: 24/01/2008, 18h05
  4. Réponses: 4
    Dernier message: 16/01/2007, 19h48
  5. Insertion image avec LaTeX
    Par zzoumzzoum dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 1
    Dernier message: 20/10/2006, 10h59

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