资源描述:
《excel如何撤销工作表保护密码》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Excel,遗忘密码后如何撤销工作表保护密码(2011-06-2315:55:24)转载▼标签:excel工作表保护密码杂谈1、打开您需要撤销保护密码的Excel文件;2、依次点击菜单栏上的工具---宏----录制新宏,输入宏名字如:ab;3、停止录制(这样得到一个空宏);4、依次点击菜单栏上的工具---宏----宏,选ab,点编辑按钮;5、删除窗口中的所有字符(只有几个),替换为以下内容; PublicSub工作表保护密码()ConstDBLSPACEAsString=vbNewLine&vb
2、NewLineConstAUTHORSAsString=DBLSPACE&vbNewLine&_"作者:eric"ConstHEADERAsString="工作表保护密码"ConstVERSIONAsString=DBLSPACE&"版本Version1.1.1"ConstREPBACKAsString=DBLSPACE&""ConstZHENGLIAsString=DBLSPACE&" eric"ConstALLCLEARAsString=DBLSPACE&"
3、该工作簿中的工作表密码保护已全部解除。"&DBLSPACE&"请记得重新设置密码"_&DBLSPACE&"注意:此方法仅用于遗忘密码使用。"ConstMSGNOPWORDS1AsString="该文件工作表中没有加密"ConstMSGNOPWORDS2AsString="该文件工作表中没有加密2"ConstMSGTAKETIMEAsString="请耐心等候!"&DBLSPACE&"按确定开始回复"ConstMSGPWORDFOUND1AsString="密码重新组合为:"&DBLSPACE&"
4、$$"&DBLSPACE&_"如果该文件工作表有不同密码,将搜索下一组密码并修改清除"ConstMSGPWORDFOUND2AsString="密码重新组合为:"&DBLSPACE&"$$"&DBLSPACE&_"如果该文件工作表有不同密码,将搜索下一组密码并解除"ConstMSGONLYONEAsString="确保为唯一的?"Dimw1AsWorksheet,w2AsWorksheetDimiAsInteger,jAsInteger,kAsInteger,lAsIntegerDimmAsIn
5、teger,nAsInteger,i1AsInteger,i2AsIntegerDimi3AsInteger,i4AsInteger,i5AsInteger,i6AsIntegerDimPWord1AsStringDimShTagAsBoolean,WinTagAsBooleanApplication.ScreenUpdating=FalseWithActiveWorkbookWinTag=.ProtectStructureOr.ProtectWindowsEndWithShTag=FalseF
6、orEachw1InWorksheetsShTag=ShTagOrw1.ProtectContentsNextw1IfNotShTagAndNotWinTagThenMsgBoxMSGNOPWORDS1,vbInformation,HEADERExitSubEndIfMsgBoxMSGTAKETIME,vbInformation,HEADERIfNotWinTagThenElseOnErrorResumeNextDo'dummydoloopFori=65To66:Forj=65To66:Fork
7、=65To66Forl=65To66:Form=65To66:Fori1=65To66Fori2=65To66:Fori3=65To66:Fori4=65To66Fori5=65To66:Fori6=65To66:Forn=32To126WithActiveWorkbook.UnprotectChr(i)&Chr(j)&Chr(k)&_Chr(l)&Chr(m)&Chr(i1)&Chr(i2)&_Chr(i3)&Chr(i4)&Chr(i5)&Chr(i6)&Chr(n)If.ProtectSt
8、ructure=FalseAnd_.ProtectWindows=FalseThenPWord1=Chr(i)&Chr(j)&Chr(k)&Chr(l)&_Chr(m)&Chr(i1)&Chr(i2)&Chr(i3)&_Chr(i4)&Chr(i5)&Chr(i6)&Chr(n)MsgBoxApplication.Substitute(MSGPWORDFOUND1,_"$$",PWord1),vbInformation,HEADERExitDo'Bypassallfor...nextsEndIf