Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 10178|回复: 8

[已解决]VBA代码删除特定图片问题

[复制链接]
发表于 2013-7-30 17:10 | 显示全部楼层 |阅读模式
对图片对象不是很清楚,所以上来向大家求助。我想删除除了某张图片以外的图片(那张图片是固定名称和位置的),貌似没有shape.name属性?求各位高手帮助,谢谢。[url=]test.zip[/url]
最佳答案
2013-7-30 18:20
直接用名字相匹配删除吧。
遍历shapes集合。

test.zip

283.96 KB, 下载次数: 29

发表于 2013-7-30 17:33 | 显示全部楼层
  1. Sub a()
  2.     Dim x
  3.     For Each x In ActiveSheet.DrawingObjects
  4.         If x.Name <> "Picture 1" Then x.Delete
  5.     Next
  6. End Sub
复制代码
回复

使用道具 举报

发表于 2013-7-30 17:35 | 显示全部楼层
  1. Sub 显示所有图形()
  2. Dim sp As Shape
  3. For Each sp In ActiveSheet.Shapes
  4.    Debug.Print sp.Name
  5. Next
  6. End Sub

  7. Sub 删除指定图形()
  8.   Dim sp As Shape
  9.   For Each sp In ActiveSheet.Shapes
  10.     If sp.Name <> "Picture 1" And InStr(sp.Name, "Rectangle") = 0 Then
  11.       sp.Delete
  12.     End If
  13.   Next
  14. End Sub
复制代码
我的思路是你先显示所有的控件或者图形名称,再根据找到的名称进行删除。当然,如果你知道你所插入图形或者控件的名称就不需要走第一步了。
回复

使用道具 举报

发表于 2013-7-30 18:11 | 显示全部楼层
本帖最后由 殿堂之上 于 2013-7-30 18:14 编辑
  1. Sub a()
  2. Dim str
  3. str = "Picture 1"
  4. For Each f In ActiveSheet.Shapes
  5. <span style="line-height: 1.5;">If f.Type = 13 Then</span>
  6. If f.Name <> str Then
  7. f.Delete
  8. End If
  9. End If
  10. Next
  11. End Sub
复制代码
你可以点附件中的控件1看下

test.zip

289.47 KB, 下载次数: 71

回复

使用道具 举报

发表于 2013-7-30 18:20 | 显示全部楼层    本楼为最佳答案   
直接用名字相匹配删除吧。
遍历shapes集合。
回复

使用道具 举报

 楼主| 发表于 2013-7-30 18:47 | 显示全部楼层
hwc2ycy 发表于 2013-7-30 18:20
直接用名字相匹配删除吧。
遍历shapes集合。

恩,可以了。谢谢。
回复

使用道具 举报

 楼主| 发表于 2013-7-30 18:49 | 显示全部楼层
爱疯 发表于 2013-7-30 17:33

不好意思,先看到最后一个了。已经解决,谢谢。
回复

使用道具 举报

 楼主| 发表于 2013-7-30 18:49 | 显示全部楼层
chenzhi_juan 发表于 2013-7-30 17:35
我的思路是你先显示所有的控件或者图形名称,再根据找到的名称进行删除。当然,如果你知道你所插入图形或者 ...

感谢分享思路。
回复

使用道具 举报

 楼主| 发表于 2013-7-30 18:50 | 显示全部楼层
殿堂之上 发表于 2013-7-30 18:11
你可以点附件中的控件1看下

麻烦你了,已解决,谢谢。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-27 05:44 , Processed in 0.355155 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表