


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年3D打印行业发展趋势与市场潜力分析
- 消防安全用电安全课件
- 教学案例机械冷藏车装运葡萄发生腐烂第页课件
- 小学科学人教鄂教版(2024)一年级上册(2024)10 常见的工具教案
- 注册测绘师考前冲刺必刷题附答案2024
- 老年大学京剧青衣课程教学大纲
- 儿童成长知识课件
- 一年级体育上册 我们的身体教学设计
- 空调性能测试郑毛祥时间年月课件
- 2025年中级会计专业技术资格重点试题带答案
- 12J003《室外工程图集》
- JGJ196-2010建筑施工塔式起重机安装、使用、拆卸安全技术规程
- 档案学概论-冯惠玲-笔记
- 2024至2030年中国桌上游戏(桌游)行业市场调查研究及投资潜力预测报告
- 尾矿库基本知识
- 财会实操-体育馆的账务处理分录
- 双汇冷链物流-2
- 2024年安徽中考历史试卷试题答案解析及备考指导课件
- 2024急救培训心肺复苏课件
- 人文关怀护理课件
- 2024山东能源集团中级人才库选拔高频考题难、易错点模拟试题(共500题)附带答案详解
评论
0/150
提交评论