作者Ibrahimovic (伊布)
看板Office
标题[问题] 如何用VBA删除图表
时间Fri Jan 4 14:55:46 2019
软体: Excel
版本: 2016
目标:
设计一个按钮,按下後,删除工作表里的图表
之後再重新做一个新的图表
(注) 因为图表采用的全部资料笔数往後会一直增加,所以旧图表一定要删
问题:
因为新增图表後,图表编号会一直累加上去,删除旧的图表,编号还是会累加
例如新增2张图表
第一个图表的名称在excel里的内定名称是「图表 1」
第二个图表的名称在excel里的内定名称是「图表 2」
如果把「图表 2」删除後,再新增一个图表,此新增图表名称会是「图表 3」
所以想知道的是
(1) 用VBA写,要如何一次删除工作表里的全部图表?
(2) 要如何从VBA内得知,目前工作表里的所有图表编号,以利指定图表删除?
请问有人知道吗?
感恩
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 111.254.15.100
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Office/M.1546584948.A.127.html
※ Ibrahimovic:转录至看板 Visual_Basic 01/04 14:56
1F:→ soyoso: 回圈chrtobjects或shapes集合,再delete;要取得名称的话 01/04 15:01
2F:→ soyoso: 则以name 01/04 15:01
3F:→ soyoso: 如工作表内只有图表的shape的话也可以selectall,再将选取 01/04 15:05
4F:→ soyoso: delete 01/04 15:05
5F:→ soyoso: 如不只有图表的shape而要以回圈shapes集合删除的话,再判 01/04 15:08
6F:→ soyoso: 断type是否为msochart 01/04 15:08
其实我有先上google找到一些方法,可是试不太顺利
所以刚刚我用较土法炼钢的方式解决了
制出一个图表後,就直接找一个储存格,印出该图表名称
之後要删除图表时,去读该储存格的内容就好了
然後图表把储存格给盖住,以求美观简洁
还是感谢您热心回应,3Q
※ 编辑: Ibrahimovic (111.254.15.100), 01/04/2019 15:16:49