推荐系统下载

软件百科
您的位置:首页 > 系统下载 > IT知识 > 软件百科
2014-03-10 00:00:00
excel表格密码破解方法
[文章导读]在使用Excel的工作表保护功能后却忘记了保护密码,大家是否遇到过这样的情况?这时我们该怎么办呢?有时您从网上下载的Excel格式的小程序,您想修改,但是作者加了工作表保护密码,怎么

在使用Excel的工作表保护功能后却忘记了保护密码,大家是否遇到过这样的情况?这时我们该怎么办呢?有时您从网上下载的Excel格式的小程序,您想修改,但是作者加了工作表保护密码,怎么办?我相信你耐心仔细的看完这篇文章之后,让你挠头的问题就会迎刃而解。书归正传,接下来就给大家介绍一种密码破解的方法,参照图例的步骤操作即可决:

1.打开您需要破解的Excel文件,以下图为范例:excel表格密码破解方法

2.依次点击菜单栏上的工具---宏----录制新宏;excel表格密码破解方法

3.输入宏名字(PS:打击积极性啊!)如:易尔拓,然后停止录制(这样得到一个空宏,为后面添加vb代码做准备);excel表格密码破解方法

4.依次点击菜单栏上的工具---宏----宏,点‘编辑’按钮,删除窗口中的所有字符,替换为下面的内容(复制即可):

Option?ExplicitPublic?Sub?AllInternalPasswords()

'?Breaks?worksheet?and?workbook?structure?passwords.?Bob?McCormick

'?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?BooleanApplication.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

excel表格密码破解方法5.依次点击菜单栏上的工具---宏-----宏,选AllInternalPasswords,执行,确定两次。抽完一支烟之后再回来点击两次确定,大功告成。