J'ai vu beaucoup d'articles sur nous xlApp.activesheet.Pictures.Insert(strImagePath)
pour insérer des images dans un tableur avec VBA, ce qui fonctionne très bien. Le seul problème est qu'il l'insère comme une image liée. Donc, si j'envoie le tableur hors de notre réseau, les images échouent. Quelqu'un peut-il me dire comment utiliser Pictures.Insert
pour placer l'image en tant qu'image incorporée, ou peut-être une autre méthode pour l'insérer? J'appelle également cette méthode d'accès si cela peut aider.
vous pouvez utiliser la méthode figures.addpicture
activesheet.Shapes.AddPicture Filename:="C:\test\desert.jpg", linktofile:=msoFalse, _
savewithdocument:=msoCTrue, Left:=0, Top:=0, Width:=100, Height:=100
Notez que vous pouvez définir les paramètres requis Width et Height sur -1, ce qui permet de conserver la hauteur et la largeur de l'image d'origine!
Activesheet.Shapes.AddPicture Filename:="C:\image.jpg", LinkToFile:=msoFalse, _
SaveWithDocument:=msoTrue, Left:=0, Top:=0, Width:=-1, Height:=-1
http://excelmatters.com/2013/11/25/default-picture-size-with-shapes-addpicture/
(Ajouté comme une autre réponse pour augmenter la visibilité alors que je me débattais avec ce problème depuis longtemps et que je n'avais pas trouvé cette solution documentée ailleurs.)