excel2007取消加密保护的教程
在Excel中有很多重要的数据前期需要加上密码保护,但到后期却已经不再重要需要取消加密保护,下面是学习啦小编带来的关于excel 2007取消加密保护的教程的内容,欢迎阅读!
excel 2007取消加密保护的教程
1、打开Excel表格中的Excel选项,选择自定义,得到如下画面:
excel2007撤销保护密码的方法图1
2、然后在左边侧框栏中选择“查看宏”
之后双击或者选择添加按钮,则可以看到右边栏中有了查看宏按钮,之后点击右下角的确定。
3、大家可以在下面这个窗口处看到箭头所指的按钮:
点击按钮,之后弹出窗口:
excel2007撤销保护密码的方法图2
excel2007撤销保护密码的方法图3
4、在宏名处填写一个名字(可随意),然后点击创建,弹出以下窗口:
excel2007撤销保护密码的方法图4
5、将窗口内的内容全选后删除,然后将下面分割线以内的内容开始复制粘贴在上面的窗口内:
从横线下开始复制
------------------------------------------------------------------------------------------
Option?Explicit
Public?Sub?AllInternalPasswords()
\'?Breaks?worksheet?and?workbook?structure?passwords.?Bob?McCormick
\'?probably?originator?of?base?code?algorithm?modified?for?coverage
\'?of?workbook?structure?/?windows?passwords?and?for?multiple?passwords
\'
\'?Norman?Harker?and?JE?McGimpsey?27-Dec-2002?(Version?1.1)
\'?Modified?2003-Apr-04?by?JEM:?All?msgs?to?constants,?and
\'?eliminate?one?Exit?Sub?(Version?1.1.1)
\'?Reveals?hashed?passwords?NOT?original?passwords
Const?DBLSPACE?As?String?=?vbNewLine?&?vbNewLine
Const?AUTHORS?As?String?=?DBLSPACE?&?vbNewLine?&?_
"Adapted?from?Bob?McCormick?base?code?by"?&?_
"Norman?Harker?and?JE?McGimpsey"
Const?HEADER?As?String?=?"AllInternalPasswords?User?Message"
Const?VERSION?As?String?=?DBLSPACE?&?"Version?1.1.1?2003-Apr-04"
Const?REPBACK?As?String?=?DBLSPACE?&?"Please?report?failure?"?&?_
"to?the?microsoft.public.excel.programming?newsgroup."
Const?ALLCLEAR?As?String?=?DBLSPACE?&?"The?workbook?should?"?&?_
"now?be?free?of?all?password?protection,?so?make?sure?you:"?&?_
DBLSPACE?&?"SAVE?IT?NOW!"?&?DBLSPACE?&?"and?also"?&?_
DBLSPACE?&?"BACKUP!,?BACKUP!!,?BACKUP!!!"?&?_
DBLSPACE?&?"Also,?remember?that?the?password?was?"?&?_
"put?there?for?a?reason.?Don\'t?stuff?up?crucial?formulas?"?&?_
"or?data."?&?DBLSPACE?&?"Access?and?use?of?some?data?"?&?_
"may?be?an?offense.?If?in?doubt,?don\'t."
Const?MSGNOPWORDS1?As?String?=?"There?were?no?passwords?on?"?&?_
"sheets,?or?workbook?structure?or?windows."?&?AUTHORS?&?VERSION
Const?MSGNOPWORDS2?As?String?=?"There?was?no?protection?to?"?&?_
"workbook?structure?or?windows."?&?DBLSPACE?&?_
"Proceeding?to?unprotect?sheets."?&?AUTHORS?&?VERSION
Const?MSGTAKETIME?As?String?=?"After?pressing?OK?button?this?"?&?_
"will?take?some?time."?&?DBLSPACE?&?"Amount?of?time?"?&?_
"depends?on?how?many?different?passwords,?the?"?&?_
"passwords,?and?your?computer\'s?specification."?&?DBLSPACE?&?_
"Just?be?patient!?Make?me?a?coffee!"?&?AUTHORS?&?VERSION
Const?MSGPWORDFOUND1?As?String?=?"You?had?a?Worksheet?"?&?_
"Structure?or?Windows?Password?set."?&?DBLSPACE?&?_
"The?password?found?was:?"?&?DBLSPACE?&?"$$"?&?DBLSPACE?&?_
"Note?it?down?for?potential?future?use?in?other?workbooks?by?"?&?_
"the?same?person?who?set?this?password."?&?DBLSPACE?&?_
"Now?to?check?and?clear?other?passwords."?&?AUTHORS?&?VERSION
Const?MSGPWORDFOUND2?As?String?=?"You?had?a?Worksheet?"?&?_
"password?set."?&?DBLSPACE?&?"The?password?found?was:?"?&?_
DBLSPACE?&?"$$"?&?DBLSPACE?&?"Note?it?down?for?potential?"?&?_
"future?use?in?other?workbooks?by?same?person?who?"?&?_
"set?this?password."?&?DBLSPACE?&?"Now?to?check?and?clear?"?&?_
"other?passwords."?&?AUTHORS?&?VERSION
Const?MSGONLYONE?As?String?=?"Only?structure?/?windows?"?&?_
"protected?with?the?password?that?was?just?found."?&?_
ALLCLEAR?&?AUTHORS?&?VERSION?&?REPBACK
Dim?w1?As?Worksheet,?w2?As?Worksheet
Dim?i?As?Integer,?j?As?Integer,?k?As?Integer,?l?As?Integer
Dim?m?As?Integer,?n?As?Integer,?i1?As?Integer,?i2?As?Integer
Dim?i3?As?Integer,?i4?As?Integer,?i5?As?Integer,?i6?As?Integer
Dim?PWord1?As?String
Dim?ShTag?As?Boolean,?WinTag?As?Boolean
Application.ScreenUpdating?=?False
With?ActiveWorkbook
WinTag?=?.ProtectStructure?Or?.ProtectWindows
End?With
ShTag?=?False
For?Each?w1?In?Worksheets
ShTag?=?ShTag?Or?w1.ProtectContents
Next?w1
If?Not?ShTag?And?Not?WinTag?Then
MsgBox?MSGNOPWORDS1,?vbInformation,?HEADER
Exit?Sub
End?If
MsgBox?MSGTAKETIME,?vbInformation,?HEADER
If?Not?WinTag?Then
MsgBox?MSGNOPWORDS2,?vbInformation,?HEADER
Else
On?Error?Resume?Next
Do?\'dummy?do?loop
For?i?=?65?To?66:?For?j?=?65?To?66:?For?k?=?65?To?66
For?l?=?65?To?66:?For?m?=?65?To?66:?For?i1?=?65?To?66
For?i2?=?65?To?66:?For?i3?=?65?To?66:?For?i4?=?65?To?66
For?i5?=?65?To?66:?For?i6?=?65?To?66:?For?n?=?32?To?126
With?ActiveWorkbook
.Unprotect?Chr(i)?&?Chr(j)?&?Chr(k)?&?_
Chr(l)?&?Chr(m)?&?Chr(i1)?&?Chr(i2)?&?_
Chr(i3)?&?Chr(i4)?&?Chr(i5)?&?Chr(i6)?&?Chr(n)
If?.ProtectStructure?=?False?And?_
.ProtectWindows?=?False?Then
PWord1?=?Chr(i)?&?Chr(j)?&?Chr(k)?&?Chr(l)?&?_
Chr(m)?&?Chr(i1)?&?Chr(i2)?&?Chr(i3)?&?_
Chr(i4)?&?Chr(i5)?&?Chr(i6)?&?Chr(n)
MsgBox?Application.Substitute(MSGPWORDFOUND1,?_
"$$",?PWord1),?vbInformation,?HEADER
Exit?Do?\'Bypass?all?for...nexts
End?If
End?With
Next:?Next:?Next:?Next:?Next:?Next
Next:?Next:?Next:?Next:?Next:?Next
Loop?Until?True
On?Error?GoTo?0
End?If
If?WinTag?And?Not?ShTag?Then
MsgBox?MSGONLYONE,?vbInformation,?HEADER
Exit?Sub
End?If
On?Error?Resume?Next
For?Each?w1?In?Worksheets
\'Attempt?clearance?with?PWord1
w1.Unprotect?PWord1
Next?w1
On?Error?GoTo?0
ShTag?=?False
For?Each?w1?In?Worksheets
\'Checks?for?all?clear?ShTag?triggered?to?1?if?not.
ShTag?=?ShTag?Or?w1.ProtectContents
Next?w1
If?ShTag?Then
For?Each?w1?In?Worksheets
With?w1
If?.ProtectContents?Then
On?Error?Resume?Next
Do?\'Dummy?do?loop
For?i?=?65?To?66:?For?j?=?65?To?66:?For?k?=?65?To?66
For?l?=?65?To?66:?For?m?=?65?To?66:?For?i1?=?65?To?66
For?i2?=?65?To?66:?For?i3?=?65?To?66:?For?i4?=?65?To?66
For?i5?=?65?To?66:?For?i6?=?65?To?66:?For?n?=?32?To?126
.Unprotect?Chr(i)?&?Chr(j)?&?Chr(k)?&?_
Chr(l)?&?Chr(m)?&?Chr(i1)?&?Chr(i2)?&?Chr(i3)?&?_
Chr(i4)?&?Chr(i5)?&?Chr(i6)?&?Chr(n)
If?Not?.ProtectContents?Then
PWord1?=?Chr(i)?&?Chr(j)?&?Chr(k)?&?Chr(l)?&?_
Chr(m)?&?Chr(i1)?&?Chr(i2)?&?Chr(i3)?&?_
Chr(i4)?&?Chr(i5)?&?Chr(i6)?&?Chr(n)
MsgBox?Application.Substitute(MSGPWORDFOUND2,?_
"$$",?PWord1),?vbInformation,?HEADER
\'leverage?finding?Pword?by?trying?on?other?sheets
For?Each?w2?In?Worksheets
w2.Unprotect?PWord1
Next?w2
Exit?Do?\'Bypass?all?for...nexts
End?If
Next:?Next:?Next:?Next:?Next:?Next
Next:?Next:?Next:?Next:?Next:?Next
Loop?Until?True
On?Error?GoTo?0
End?If
End?With
Next?w1
End?If
MsgBox?ALLCLEAR?&?AUTHORS?&?VERSION?&?REPBACK,?vbInformation,?HEADER
End?Sub
-----------------------------------------------------------------------------------------
复制到横线以上
得到情况如下图表示
excel2007撤销保护密码的方法图5
6、关闭编辑窗口;
7、依次点击菜单栏上的工具---宏-----宏,选AllInternalPasswords,运行,确定两次;
等一会,就会出现以下对话框:这就是Excel密码对应的原始密码(此密码和原先设置的密码都能打开此文档。如果是别人的文档,你又想恢复密码设置,就可以用此密码进行保护,他就能用他设置的密码打开,你可以试试,很有趣的。字母一定要大写):
再点击确定。Excel的原始密码就被清除了!!
excel2007撤销保护密码的方法图6
8、最后记得关闭EXCEL文档时要保存,否则下回打开,文档仍旧处于只读状态而无法修改。
excel2007取消加密保护的教程相关文章: