Erreur insertion image avec macro

Le
jogr19 Hors ligne
Bonjour,

J’ai créé une liste de teintes dans une feuille Excel et je souhaiterais afficher dans la première colonne l’image de cette teinte.

J’ai trouvé une formule macro sur Internet (initialement sous Windows 7) qui ne fonctionne pas sur mon mac.

Ci-joint le classeur Excel. Aucune image ne s’affiche, seul le chemin d’accès reste visible… Pourtant la référence de la teinte et le nom de l’image de la teinte sont bien identiques.

Pouvez-vous m’aider ?

Je reste à disposition pour plus d’information complémentaire.

Merci !
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
jogr19 Hors ligne
Le #26526138
Le mardi 17 Septembre 2019 à 11:57 par jogr19 :
Bonjour,

J’ai créé une liste de teintes dans une feuille Excel et je
souhaiterais afficher dans la première colonne l’image de cette
teinte.

J’ai trouvé une formule macro sur Internet (initialement sous
Windows 7) qui ne fonctionne pas sur mon mac.

Ci-joint le classeur Excel. Aucune image ne s’affiche, seul le chemin
d’accès reste visible… Pourtant la référence
de la teinte et le nom de l’image de la teinte sont bien identiques.

Pouvez-vous m’aider ?

Je reste à disposition pour plus d’information
complémentaire.

Merci !


comment est-il possible d'ajouter le fichier joint ?
MichD
Le #26526143
Le 17/09/19 à 05:57, jogr19 a écrit :
Bonjour,
J’ai créé une liste de teintes dans une feuille Excel et je souhaiterais
afficher dans la première colonne l’image de cette teinte.
J’ai trouvé une formule macro sur Internet (initialement sous Windows 7) qui ne
fonctionne pas sur mon mac.
Ci-joint le classeur Excel. Aucune image ne s’affiche, seul le chemin d’accès
reste visible… Pourtant la référence de la teinte et le nom de l’image de la
teinte sont bien identiques.
Pouvez-vous m’aider ?
Je reste à disposition pour plus d’information complémentaire.
Merci !


Bonjour,
Pour insérer une image dans une feuille particulière couvrant l'étendue
d'une plage de cellules définies, tu peux utiliser ceci :
'---------------------------------------------
Sub TestMonImage()
'Feuil1 = Nom de l'onglet de la feuille
' Range("b5:D6") = Plage de cellules que doit occupée l'image
"E:ImagesListBox.JPG" = Chemin et le nom de l'image
'Adapter les variables dans la ligne suivante :
InsérerImage "Feuil1", Range("b5:D6"), "E:ImagesListBox.JPG"
End Sub
'---------------------------------------------
Sub InsérerImage(Feuille As String, RgImage As Range, NomImage As String)
Dim Rg As Range
Set Rg = Worksheets(Feuille).Range(RgImage.Address)
With Rg
Largeur = .Offset(, 1)(, .Columns.Count).Left - .Left
Hauteur = .Offset(.Rows.Count).Top - .Item(1).Top
Set image = Worksheets(Feuille).Pictures.Insert(NomImage)
End With
With image
With .ShapeRange
.LockAspectRatio = msoFalse
.Left = Rg.Left
.Top = Rg.Top
'Largeur de l'image
.Width = Largeur
'Hauteur de l'image
.Height = Hauteur
'Est-ce que l'image doit se déplacer avec les cellules
'voici les 3 constantes possibles
End With
.Placement = xlFreeFloating 'or xlmove or xlMoveAndSize
'Verrouillé ou pas
.Locked = True 'or False
End With
Set Rg = Nothing
End Sub
'---------------------------------------------
MichD
MichD
Le #26526147
Le 17/09/19 à 07:10, MichD a écrit :
Le 17/09/19 à 05:57, jogr19 a écrit :
Bonjour,
J’ai créé une liste de teintes dans une feuille Excel et je souhaiterais
afficher dans la première colonne l’image de cette teinte.
J’ai trouvé une formule macro sur Internet (initialement sous Windows
7) qui ne
fonctionne pas sur mon mac.
Ci-joint le classeur Excel. Aucune image ne s’affiche, seul le chemin
d’accès
reste visible… Pourtant la référence de la teinte et le nom de l’image
de la
teinte sont bien identiques.
Pouvez-vous m’aider ?
Je reste à disposition pour plus d’information complémentaire.
Merci !

Bonjour,
Pour insérer une image dans une feuille particulière couvrant l'étendue
d'une plage de cellules définies, tu peux utiliser ceci :
'---------------------------------------------
Sub TestMonImage()
'Feuil1 = Nom de l'onglet de la feuille
' Range("b5:D6") = Plage de cellules que doit occupée l'image
"E:ImagesListBox.JPG" = Chemin et le nom de l'image
'Adapter les variables dans la ligne suivante :
InsérerImage "Feuil1", Range("b5:D6"), "E:ImagesListBox.JPG"
End Sub
'---------------------------------------------
Sub InsérerImage(Feuille As String, RgImage As Range, NomImage As String)
Dim Rg As Range
Set Rg = Worksheets(Feuille).Range(RgImage.Address)
    With Rg
        Largeur = .Offset(, 1)(, .Columns.Count).Left - .Left
        Hauteur = .Offset(.Rows.Count).Top - .Item(1).Top
        Set image = Worksheets(Feuille).Pictures.Insert(NomImage)
    End With
    With image
        With .ShapeRange
            .LockAspectRatio = msoFalse
            .Left = Rg.Left
            .Top = Rg.Top
            'Largeur de l'image
            .Width = Largeur
            'Hauteur de l'image
            .Height = Hauteur
            'Est-ce que l'image doit se déplacer avec les cellules
            'voici les 3 constantes possibles
        End With
            .Placement = xlFreeFloating  'or xlmove or xlMoveAndSize
            'Verrouillé ou pas
            .Locked = True 'or False
    End With
    Set Rg = Nothing
End Sub
'---------------------------------------------
MichD

Tu es sur Mac. Je ne connais pas cet environnement ni les particularités
associées à VBA sur Mac. J'espère que les procédures proposées vont
fonctionner.
MichD
Nobody
Le #26526155
jogr19 interrogea :
[...]
comment est-il possible d'ajouter le fichier joint ?

Ben en le déposant sur correspondante sur le forum.
--
Veuillez multidupliquer le convertisseur
instable avant d'ajuster sciemment.
Publicité
Poster une réponse
Anonyme