我遇到了一个在Excel 2007下发生的奇怪问题。
我创建了一个包含1000行(不同产品/商品编号)的文档,并使用我的小VBA代码从网上获取产品图片
ActiveSheet.Pictures.Insert(ActiveCell.Text).Select
Selection.ShapeRange.Height = 100
图片确实显示在 Excel 2010 中,即使在其他PC上也是如此 但是,它们不会出现在 Excel 2007 中,即使是其他格式,例如97-03
答案 0 :(得分:1)
尝试将图片添加到Excel工作表的替代方法。它将如下:
ActiveSheet.Shapes.AddPicture _
Filename:=Activecell.Text, _
linktofile:=msoFalse, _
savewithdocument:=msoCTrue, _
Left:=40, Top:=40, Width:=1600, Height:=1600
很少有人发现它是更稳定可靠的添加图片的方法。
编辑正如@Julien Marrec所指出的那样,使用我提供的代码,你需要知道形状的比例,或者你需要调整它作为下一步。我通常使用此代码执行此操作:
With ActiveSheet.Shapes(ActiveSheet.Count)
.LockAspectRatio = msoTrue
.ScaleHeight 1, msoTrue, msoScaleFromTopLeft
.Width = 200
End With
重要!如果添加大图片,则需要在添加时加大尺寸(在代码的第一部分为1600像素)。如果不是,您将无法在代码的第二部分中获得.ScaleHeight method
的结果。