(PPT宏)轻松删除空白文本框──大量做ppt的请一定要看 我是一个在校大学生,要看大量ppt课件。而又习惯在“普通”视图下浏览(我想有很多人也是这样),有一个不得不面对的问题是:经常出现空白文本框(上面写着“单击此处添加(副)标题”、“单击此处添加文本”),阻挡了有效内容。以前我总是习惯性地,出现一个就删一个,但对于一个含有大量空白文本框的ppt,确实非常费劲,感到郁闷。终于下定决心钻研,写出了下面这个macro,同各位一起分享,并请各位不吝指教! 说明: 1、用三个条件(“If…Then…”嵌套)确定了要对付的目标,即空白文本框; 2、之所以用“Do…Loop While…”循环(结合“found”变量),是因为我发现“For Each shp In Sld.Shapes”这个语句并非真的“对每一个shape对象”,而是只要找到(并删除)一个空白文本框,就“Next shp”去了,用“Do…Loop While…”循环(结合“found”变量),既删除了所有空白文本框,又不会出现“死循环”,实现了想要的效果; Sub Del空框() Dim found As Boolean Do found = False For Each Sld In ActivePresentation.Slides For Each shp In Sld.Shapes If shp.HasTextFrame Then If shp.Type <> 1 Then If Not shp.TextFrame.HasText Then ActiveWindow.View.GotoSlide Index:=shp.Parent.SlideIndex shp.Select MsgBox "Here" '此语句用于检验,可省去 shp.Delete found = True End If End If End If Next shp Next Sld Loop While found = True End Sub 如果你觉得这个贴子还值得一看的话,那么请一定要回复,你的回复会给我很大的激励。
[此贴子已经被作者于2006-9-15 17:32:45编辑过] |