PPT批量修改公式文字颜色_第1页
PPT批量修改公式文字颜色_第2页
PPT批量修改公式文字颜色_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、转在PowerPoint中使用宏实现批量修改公式的打印颜色在学校老师的课件大都是ppt,所以不得不和微软的东西打交道。我们有一位老师,他的课件中的公式都被他重新着色成了黄色,这样上课时配着蓝色背景,既醒目又看着舒服。可是我们打印的时候才发现,即使打印时颜色选成纯黑白,那写公式也照样灰灰、浅浅的,几乎看不清。一份幻灯片里有无数的公式,手工修改肯定很累。自己Office水平又比较菜,不知道PowerPoint有什么内置功能可以批量修改公式颜色(有人知道的话,请不吝赐教),幸好以前VB用的还好,就在手册的帮助下,写了一个宏,最终解决了这个问题。不过费尽周折,历时三周(当然,不是全部用来干这个)。一开

2、始根本不知道解决问题的方向(以下省略走的弯路若干字),后来在浏览Shape对象的属性时发现了有BlackWhiteMode这个属性,才知道PowerPoint在纯黑白模式打印时是根据对象的这个属性来决定打印的颜色。这才找到解决问题的方向。可是接下来问题又来了,老师为了排版,把很多公式与文字及图片组合起来,而且有时还不止一层组合,这样就必须递归遍历来找出其中的公式(如果直接全部打成黑的,很多图片就会变成一团黑,看不清。)递归本来很简单,我写了如下的代码,这也是我后来代码的原型:原型代码ThemacrotoexcuteSubReColor()DimsldAsSlideDimshAsShapeFor

3、EachsldInActivePresentation.SlidesForEachshInsld.ShapesCallReColorSH(sh)NextNextEndSubSubReColorSH(shAsShape)DimsshAsShapeIfsh.Type=msoGroupThenwhentheshapeitselfisagroupForEachsshInsh.GroupItemsReColorSH(ssh)therecursionNextElseIfsh.Type=msoEmbeddedOLEObjectThenrecolortheequationIfLeft(sh.OLEFormat

4、.ProgID,8)=EquationThensh.BlackWhiteMode=msoBlackWhiteBlackEndIfEndIfEndSub但VBA貌似不能传递Shape对象作为参数。所以不得不花费功夫用数组作堆栈并自行模拟递归过程,下面是最终代码:最终代码VBAcannotpassShapeintoafunction,soglobalvarisusedPublicshAsShapeThemacrotoexcuteSubReColor()DimsldAsSlideForEachsldInActivePresentation.SlidesForEachshInsld.ShapesCal

5、lReColorSHNextNextEndSubSubReColorSH()DimipAsIntegerpointtothetopoftheistackDimspAsIntegerpointtothetopoftheshapestackDimistk()AsIntegertheistack,usingdynamicarrayDimsstk()AsShapetheShapestack,usingdynamicarrayDimssizeAsIntegerthesizeofbothstacksssize=10ReDimistk(ssize)ReDimsstk(ssize)ip=0sp=0DimiAs

6、IntegerL2:Ifsh.Type=msoGroupTheni=1L1:pushS(sh)sp=sp+1IfspssizeThenssize=ssize+1ReDimPreserveistk(ssize)ReDimPreservesstk(ssize)EndIfSetsstk(sp)=shpushI(i)ip=ip+1istk(ip)=iSetsh=sh.GroupItems(i)GoToL2L3:popI(i)i=istk(ip)ip=ip-1popS(sh)Setsh=sstk(sp)sp=sp-1Ifi0ThenGoToL3EndSub在PowerPoint2003下运行通过。(使用时只要随便新建一个宏,把它自动生成的代码全删

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论