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 :

Affichage d'image .bmp dans cellule excel 2003


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Novembre 2008
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 89
    Par défaut Affichage d'image .bmp dans cellule excel 2003
    Bonjour à tous et à toutes...


    Je voudrais afficher une image .bmp dans une cellule excel, dont le chemin (l'image) est affiché dans une cellule d'une autre feuille excel...

    En clair :

    J'ai une feuille "F_Edit" qui contient une cellule qui a pour valeur une chaine qui représente le chemin d'une image. Ex: C:\Dossier\sous-dossier\image.bmp

    J'ai une autre feuille "Detail" qui contient un SmartArt dans lequel, je voudrais afficher l'image qui correspond au chemin de l'autre feuille. Le tout en vba dans l'évènement OnLoad.... si possible

    Pourriez-vous m'aider svp... merci d'avance...

  2. #2
    Membre émérite
    Avatar de fred65200
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 901
    Par défaut
    bonjour,

    je te laisse le soin d'adapter les chemins de ce 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
    Sub InsertBMP()
    '
    Dim cheminBMP As String
    cheminBMP = Sheets("Feuil1").Range("H1")
     
        ActiveSheet.Pictures.Insert(cheminBMP).Select
     
        With Selection.ShapeRange
            .Left = Range("J12").Left
            .Top = Range("J12").Top
        End With
     
    '
    End Sub
    cordialement

  3. #3
    Membre confirmé
    Inscrit en
    Novembre 2008
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 89
    Par défaut
    Merci bcp pour ta réponse rapide.... Je la teste et te fais un "rapport"...

    re,

    ça ne semble pas fonctionner...

    Voilà ce que j'ai indiqué dans mon module.... rien ne se passe...

    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
    Sub InsertBMP()
     
    Dim cheminBMP As String
    cheminBMP = Sheets("F_Edit").Range("AK2")
     
    'MsgBox "" & cheminBMP
     
        ActiveSheet.Pictures.Insert(cheminBMP).Select
     
        With Selection.ShapeRange
            .Left = Range("B50").Left
            .Top = Range("B60").Top
        End With
     
    End Sub
    Je dois peut-être activer la sheet "Detail"...?...

  4. #4
    Membre émérite
    Avatar de fred65200
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 901
    Par défaut
    bonjour,

    initialise tes feuilles avant
    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
    Sub InsertBMP()
     dim F1 as worksheet
    dim F2 as worksheet
    
    Set F1 = sheets("F_Edit")
    Set F2 = sheets("Détail")
    
    Dim cheminBMP As String
    cheminBMP = F1.Range("AK2")
     
    'MsgBox "" & cheminBMP
     
        ActiveSheet.Pictures.Insert(cheminBMP).Select
                 
        With Selection.ShapeRange
            .Left = F2.Range("B50").Left
            .Top = F2.Range("B60").Top
        End With
     
    End Sub
    tu nous tiens au courant

  5. #5
    Membre confirmé
    Inscrit en
    Novembre 2008
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 89
    Par défaut
    Bonjour à tous....

    Désolé pour le "feedback" tardif....
    Ca fonctionne très bien, comme tu l'as indiqué..... en initialisant les feuilles...

    Il y a cependant un détail que je dois régler, c'est la taille de l'image affichée.
    Comment puis-je définir sa taille lors de l'affichage...

    De plus, comment puis-je lancer cette macro à partir d'access...?....
    Merci beaucoup pour votre aide.... à tous...

  6. #6
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Suffit que tu continues sur ta lancée...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        With Selection.ShapeRange
            .Left = F2.Range("B50").Left
            .Top = F2.Range("B60").Top
            .Width = F2.Range("B60").Width 
            .Height = F2.Range("B60").Height 
        End With
    Bonne journée

    (hello fred)

    Edit
    Avec ce code tu vas avoir une déformation de l'image. Pour régler ce problème, tu dois définir une priorité : Soit tu privilégies la hauteur, soit la largeur.
    Si c'est la hauteur, tu établis le rapport Hauteur de l'image/Hauteur de la cellule, rapport que tu appliques à la largeur de l'image, soit... tu fais l'inverse
    Pour avoir la hauteur de l'image c'est simplement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        With Selection.ShapeRange
            Hauteur = .Height
            '...
    Quant à la hauteur de la cellule, tu l'as avec F2.Range("B60").Height vu plus haut.

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 06/02/2014, 20h43
  2. Insertion d'une image BMP dans un fichier RTF
    Par didinel dans le forum MFC
    Réponses: 8
    Dernier message: 18/08/2005, 09h24
  3. Création liste dans cellules Excel en VBA
    Par yazoo dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 21/04/2005, 14h46
  4. inserer une image BMP dans un fichier rtf
    Par Alice9 dans le forum MFC
    Réponses: 17
    Dernier message: 06/07/2004, 10h31
  5. [D7-EXCEL2000] Formule dans cellule Excel qui ne se calcule pas
    Par Albertolino dans le forum API, COM et SDKs
    Réponses: 3
    Dernier message: 09/09/2003, 14h18

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