Excel VBA(工作效率倍增的实用技巧)(1).docx

上传人:lao****ou 文档编号:1052155 上传时间:2024-09-25 格式:DOCX 页数:6 大小:26.17KB
下载 相关 举报
Excel VBA(工作效率倍增的实用技巧)(1).docx_第1页
第1页 / 共6页
Excel VBA(工作效率倍增的实用技巧)(1).docx_第2页
第2页 / 共6页
Excel VBA(工作效率倍增的实用技巧)(1).docx_第3页
第3页 / 共6页
Excel VBA(工作效率倍增的实用技巧)(1).docx_第4页
第4页 / 共6页
Excel VBA(工作效率倍增的实用技巧)(1).docx_第5页
第5页 / 共6页
亲,该文档总共6页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《Excel VBA(工作效率倍增的实用技巧)(1).docx》由会员分享,可在线阅读,更多相关《Excel VBA(工作效率倍增的实用技巧)(1).docx(6页珍藏版)》请在第一文库网上搜索。

1、object.ProcCount1ines(procname,prockind)As1ong其中,参数ProCname为过程名的字符串;PrOCkind指定要定位的过程种类。3.编写代码“显示过程名”按钮的VBA代码如下:Sub显示过程名()DimoVBPAsVBIDE.VBProject,oVBCAsVBComponentDimoCMAsCodeModu1e,StrProcNameAsStringDimrAs1ong,r1As1ong,r2As1ongOnErrorResumeNextSetoVBP=ActiveWorkbook.VBProjectIfErrOOThenMsgBox当前安全设

2、置不允许运行本过程,请修改安全设置!,_VbCritica1+vbOKOn1y,警告OnErrorGoToOExitSubEndIfWithActiveSheetCo1umns(A:B).C1ear清除A、B两列的数据.RangeCA3:B3/Z)=Array(组件名称,过程名称)填充表头.Range(,zA3:B3z/).Font.Bo1d=Truer=3ForEachoVBCInoVBP.VBComponents循环处理每个组件SetoCM=oVBC.CodeModu1er1=oCM.CountOfDec1aration1ines+1跳过声明部分的代码r2=oCM.CountOf1ines

3、获取总的代码行数DoWhi1er1r2r=r+1.Ce11s(r,1)=oVBC.Name.Ce11s(r,2)=oCM.ProcOf1ine(r1,vbext_pk_Proc)当前行的过程名r1=r1+oCM.ProcCount1ines(oCM.ProcOf1ine_(r1,vbext_pk_Proc),vbext_pk_Proc)下一过程1oopNext.Co1umns(zzAiBzz).AutoFitEndWithEndSub例238导出VBA过程代码1案例说明打开本例工作簿,单击工作表中的“导出过程代码”按钮,将在当前工作表中显示各组件中的代码,每个过程显示在一行中,如图16-6所示

4、。1 导出过程代吗I2 13 组件名称过程名称具体代码Sub导出过程代码ODimoVBPAsVBIDE.VEProject,oVBCAsVBCoRponentDimOCHAsCodeModu1e,StrProcFaneAsStringDinrAs1ong,r1As1ong,r2As1ong,r3As1ongUnErrorResumeNextSetoVBP=Activeforkbook.VBProjectIfErrOOThenMSgBoX当前安防设署不允许运行本过程,话修改安全设;VbCritica1+VbOKOn1y,警告OnErrorGoToOExitSubEndIfSheet1Sheet2

5、Sheet3(?):,图16-6导出代码2 .关键技术本例代码与例237类似,除了获取各过程的名称外,还使用COdeMOdUIe对象的1ineS属性获取指定行区域的代码。1ineS属性的语法格式如下:object.1ines(start1ine,count)AsString该属性将返回代码模块中从start1ine行号开始的count行代码。提示:代码模块中的行号是从1开始的。3 .编写代码“导出过程代码”按钮的VBA代码如下:Sub导出过程代码()DimoVBPAsVBIDE.VBProject,oVBCAsVBComponentDimoCMAsCodeModu1e,StrProcNameA

6、sStringDimrAs1ong,r1As1ong,r2As1ong,r3As1ongOnErrorResumeNextSetoVBP=ActiveWorkbook.VBProjectIfErrOOThenMSgBoX当前安全设置不允许运行本过程,请修改安全设置!,VbCritica1+vbOKOn1y,警告OnErrorGoToOExitSubEndIfWithActiveSheet.Co1umns(/ZA:Cz).C1ear清除A、B两列的数据.Range(A3:C3)=Array(组件名称,过程名称,具体代码)填充表头.Range(,zA3:C3/Z).Font.Bo1d=Truer=

7、3ForEachoVBCTnoVBP.VBComponents循环处理每个组件SetoCM=oVBC.CodeModu1er1=oCM.CountOfDec1aration1ines+1跳过声明部分的代码r2=oCM.CountOf1ines获取总的代码行数DoWhi1er1Font.Bo1d-TrueForEachoRefInOVBP.References循环处理每个引用r=r+1.Ce11s(r,.Ce11s(r,.Ce11s(r,1)2)=oRef.Name引用名称-oRef.Description描述=ORef.Fu11Path保存位置Next.CO1UnInS(A:C).AutoFitEndWithEndSub

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 应用文档 > 工作总结

copyright@ 2008-2022 001doc.com网站版权所有   

经营许可证编号:宁ICP备2022001085号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有,必要时第一文库网拥有上传用户文档的转载和下载权。第一文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第一文库网,我们立即给予删除!



客服