使用VBA将图片插入(然后引用)到Excel中
我试图插入一个图片到工作表使用VBA,我可以稍后引用的名称(例如删除,或隐藏)。
我可以使用类似于下面的代码插入图像:
ActiveSheet.Shapes.AddPicture Filename:="image.jpg", linktofile:=msoFalse, _ savewithdocument:=msoCTrue, Left:=10, Top:=20, width:=100, Height:=50
然而,我正在努力将图片分配给一个形状(或其他对象),以便我可以命名它,并在以后参考它。 例如
Dim shp As Shape set shp = ActiveSheet.Shapes.AddPicture Filename:="image.jpg", linktofile:=msoFalse, _ savewithdocument:=msoCTrue, Left:=10, Top:=20, width:=100, Height:=50 shp.name = "myPicture" ... some code ... ActiveSheet.Shapes("myPicture").Delete ' or similar code to later delete the image
但是,我收到set shp = ...
行的语法错误
我也试过: Dim shp As Excel.Shape
, Dim shp As Object
根据SOpost中的注释: VBA插入embedded图片excel但仍然得到语法错误。
我哪里错了?
从方法返回值时,您需要使用圆括号:
set shp = ActiveSheet.Shapes.AddPicture(Filename:="image.jpg", linktofile:=msoFalse, _ savewithdocument:=msoCTrue, Left:=10, Top:=20, width:=100, Height:=50)