J'ai un souci avec l'insertion d'images dans Excel : si j'utilise le menu i=
nsertion pour ins=C3=A9rer un jpg, et que je sauvegarde le classeur, je peu=
x copier celui-ci sur un autre PC, l'image reste int=C3=A9gr=C3=A9e au clas=
seur.
Si je fais la m=C3=AAme chose par macro, j'ai le message d'insulte classiqu=
e d'Excel :
"Impossible d'afficher l'image li=C3=A9e" etc...
Bonjour Thierry, Je viens d'apprendre quelque chose ou j'ai oublié.... Bien sûr, il y a ta suggestion qui permet d'utiliser les arguments définis dans l'aide en ligne : https://msdn.microsoft.com/fr-fr/library/office/ff198302(v=office.15).aspx expression.AddPicture(Filename, LinkToFile, SaveWithDocument, Left, Top, Width, Height) OU On peut modifié la macro comme ceci et cela devrait aller : '----------------------------------------------------- Sub test() Dim Img As Picture With ActiveSheet Set Img = .Pictures.Insert _ ("C:UsersmichdPicturesSpotBright350198539584221898landscape.jpg") End With With Img .Name = "MichD" .Left = Range("Signature").Left .Top = Range("Signature").Top .ShapeRange(.Name).LockAspectRatio = msoFalse .Height = Range("Signature").Height - 0.5 .Width = Range("Signature").Width .Copy .Delete Worksheets(.Parent.Name).PasteSpecial Format:="Picture (JPEG)", _ Link:úlse, DisplayAsIcon:úlse End With End Sub '----------------------------------------------------- MichD
Bonjour Thierry,
Je viens d'apprendre quelque chose ou j'ai oublié....
Bien sûr, il y a ta suggestion qui permet d'utiliser les arguments définis
dans l'aide en ligne :
https://msdn.microsoft.com/fr-fr/library/office/ff198302(v=office.15).aspx
expression.AddPicture(Filename, LinkToFile, SaveWithDocument, Left, Top,
Width, Height)
OU
On peut modifié la macro comme ceci et cela devrait aller :
'-----------------------------------------------------
Sub test()
Dim Img As Picture
With ActiveSheet
Set Img = .Pictures.Insert _
("C:UsersmichdPicturesSpotBright350198539584221898landscape.jpg")
End With
With Img
.Name = "MichD"
.Left = Range("Signature").Left
.Top = Range("Signature").Top
.ShapeRange(.Name).LockAspectRatio = msoFalse
.Height = Range("Signature").Height - 0.5
.Width = Range("Signature").Width
.Copy
.Delete
Worksheets(.Parent.Name).PasteSpecial Format:="Picture (JPEG)", _
Link:úlse, DisplayAsIcon:úlse
End With
End Sub
'-----------------------------------------------------
Bonjour Thierry, Je viens d'apprendre quelque chose ou j'ai oublié.... Bien sûr, il y a ta suggestion qui permet d'utiliser les arguments définis dans l'aide en ligne : https://msdn.microsoft.com/fr-fr/library/office/ff198302(v=office.15).aspx expression.AddPicture(Filename, LinkToFile, SaveWithDocument, Left, Top, Width, Height) OU On peut modifié la macro comme ceci et cela devrait aller : '----------------------------------------------------- Sub test() Dim Img As Picture With ActiveSheet Set Img = .Pictures.Insert _ ("C:UsersmichdPicturesSpotBright350198539584221898landscape.jpg") End With With Img .Name = "MichD" .Left = Range("Signature").Left .Top = Range("Signature").Top .ShapeRange(.Name).LockAspectRatio = msoFalse .Height = Range("Signature").Height - 0.5 .Width = Range("Signature").Width .Copy .Delete Worksheets(.Parent.Name).PasteSpecial Format:="Picture (JPEG)", _ Link:úlse, DisplayAsIcon:úlse End With End Sub '----------------------------------------------------- MichD
ThierryP
Effectivement, ça fonctionne. Je garde ça dans un coin, ça resservira sûrement ! ThierryP
Effectivement, ça fonctionne.
Je garde ça dans un coin, ça resservira sûrement !