ExcleVBA常用技巧Worksheet对象_第1页
ExcleVBA常用技巧Worksheet对象_第2页
ExcleVBA常用技巧Worksheet对象_第3页
ExcleVBA常用技巧Worksheet对象_第4页
ExcleVBA常用技巧Worksheet对象_第5页
已阅读5页,还剩30页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

VBA常用技巧目录TOC\o"1-4"\h\z\uVBA常用技巧 图381所示。图STYLEREF3\s38SEQ图\*ARABIC\s31 运行错误提示解决方法是在运行操作工作表的代码前先使用代码解除工作表保护,待操作完毕后再保护工作表,如下面的代码所示。#001SubShProtect()#002WithSheet1#003.UnprotectPassword:="12345"#004.Cells(1,1)=100#005.ProtectPassword:="12345"#006EndWith#007EndSub代码解析:ShProtect过程在受保护的工作表中对单元格进行操作,其中第3行代码使用Unprotect方法解除工作表的保护。应用于Worksheet对象的Unprotect方法解除工作表的保护,如果工作表不是受保护的,则此方法不起作用,所以在解除之前无需判断工作表是否受保护,其语法如下:expression.Unprotect(Password)参数expression是必需的,该表达式返回一个Worksheet对象。参数Password是可选的,指定用于解除工作表的保护的密码,此密码是区分大小写的。第4、5行代码在单元格录入数据后使用Protect方法重新保护工作表。应用于Worksheet对象的Protect方法保护工作表使其不至被修改,语法如下:expression.Protect(Password,DrawingObjects,Contents,Scenarios,UserInterfaceOnly,AllowFormattingCells,AllowFormattingColumns,AllowFormattingRows,AllowInsertingColumns,AllowInsertingRows,AllowInsertingHyperlinks,AllowDeletingColumns,AllowDeletingRows,AllowSorting,AllowFiltering,AllowUsingPivotTables)其中参数expression是必需的,该表达式返回一个Worksheet对象。参数Password是可选的,为一个字符串,该字符串为工作表指定区分大小写的密码。其他参数都是可选参数,其功能等同于如REF_Ref222750204\h图382所示的工作表保护对话框中的各项选项,具体请参阅VBA帮助。图STYLEREF3\s38SEQ图\*ARABIC\s32 工作表保护选项如果一个Excel文件使用时间过长,忘记了工作表保护时设置的密码,那么也可以使用VBA解除工作表的保护,代码如下:#001SubRemoveShProtect()#002Dimi1AsInteger,i2AsInteger,i3AsInteger#003Dimi4AsInteger,i5AsInteger,i6AsInteger#004Dimi7AsInteger,i8AsInteger,i9AsInteger#005Dimi10AsInteger,i11AsInteger,i12AsInteger#006OnErrorResumeNext#007IfActiveSheet.ProtectContents=FalseThen#008MsgBox"该工作表没有保护密码!"#009ExitSub#010EndIf#011Fori1=65To66:Fori2=65To66:Fori3=65To66#012Fori4=65To66:Fori5=65To66:Fori6=65To66#013Fori7=65To66:Fori8=65To66:Fori9=65To66#014Fori10=65To66:Fori11=65To66:Fori12=32To126#015ActiveSheet.UnprotectChr(i1)&Chr(i2)&Chr(i3)&Chr(i4)&Chr(i5)_#016&Chr(i6)&Chr(i7)&Chr(i8)&Chr(i9)&Chr(i10)&Chr(i11)&Chr(i12)#017IfActiveSheet.ProtectContents=FalseThen#018MsgBox"已经解除了工作表保护!"#019ExitSub#020EndIf#021Next:Next:Next:Next:Next:Next#022Next:Next:Next:Next:Next:Next#023EndSub代码解析:RemoveShProtect过程解除工作表的保护。其中第7行到第10行代码判断工作表是否受保护,ProtectContents属性返回工作表的保护状态,如果工作表的内容处于保护状态,则该值为True。第11行到第22行代码使用For...Next语句和Chr函数来返回指定字符码所代表的字符串组合不断地尝试解除工作表保护,一旦工作表的ProtectContents属性返回False说明已经解除工作表保护。奇偶页打印在Excel中却没有提供打印奇数页和偶数页的功能,用户可以使用VBA在Excel中实现该功能,如下面的代码所示。#001SubPrintOddPage()#002DimTotalPgAsInteger#003TotalPg=ExecuteExcel4Macro("GET.DOCUMENT(50)")#004Fori=1ToTotalPgStep2#005ActiveSheet.PrintOutFrom:=i,To:=i#006

温馨提示

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

评论

0/150

提交评论