Parolanın ne olduğunu biliyorsanız, devam edin ve Excel belgesini açın. Ardından Dosya> Farklı Kaydet'e tıklayın. Kaydet düğmesinin solunda, Araçlar etiketli küçük bir açılır menü bulunur. Buna tıklayın ve ardından Genel Seçenekler'e tıklayın. Oradaki şifre girişlerini silin ve Tamam'a tıklayın. Belgeyi kaydedin.
Parolanın ne olduğunu bilmiyorsanız bulmak için VBA'yı kullanabilirsiniz. Bir tahminde bulunmak zorunda kalsaydım, kullanıcınız muhtemelen süper güçlü bir şifre kullanmamıştı, bu yüzden bulmak için kaba kuvvet tipi yöntemini kullanabiliriz. Aşağıdaki kod kaba, ancak bazı kullanıcı belgelerimde zayıf, kayıp bir şifre bulmama yardımcı oldu. 1'den z'ye kadar ASCII karakterleri ile herhangi bir uzunlukta şifreleri kontrol eder. Hemen Pencereden çağırır ve birkaç dakika beklersiniz:
? GetPassword("D:\mywkbk.xlsx")
-
Public Function GetPassword(ByRef sFileName As String) As String
On Error Resume Next
Dim pw As String
pw = ""
Do
VBA.Err.Clear
pw = GenerateNextPassword(pw)
Application.Workbooks.Open sFileName, False, True, , pw, pw
VBA.DoEvents
Loop While VBA.Err.Number = 5408
GetPassword = pw
End Function
Public Function GenerateNextPassword(ByRef sCurrentPassword As String) As String
Const MAX_CHAR = 122
Const MIN_CHAR = 49
Dim sCurrentPasswordMax As String
Dim sNewPassword As String
Dim i As Long
sCurrentPasswordMax = String(Len(sCurrentPassword), Chr(MAX_CHAR))
If sCurrentPassword = sCurrentPasswordMax Then
'do an increment that changes the length
sNewPassword = String(Len(sCurrentPassword) + 1, Chr(MIN_CHAR))
Debug.Print Now(); ": "; sNewPassword
ElseIf Asc(Right(sCurrentPassword, 1)) = MAX_CHAR Then
'do an increment that changes multiple characters
sNewPassword = Left(sCurrentPassword, Len(sCurrentPassword) - 1) & Chr(MIN_CHAR)
For i = Len(sCurrentPassword) - 1 To 1 Step -1
sNewPassword = Left(sNewPassword, i - 1) & Chr(Asc(Mid(sNewPassword, i, 1)) + 1) & Mid(sNewPassword, i + 1)
If Asc(Mid(sCurrentPassword, i, 1)) <> MAX_CHAR Then
Exit For
End If
Next i
Else
'do an increment on the rightmost character
sNewPassword = Left(sCurrentPassword, Len(sCurrentPassword) - 1) & Chr(Asc(Right(sCurrentPassword, 1)) + 1)
End If
GenerateNextPassword = sNewPassword
End Function
decrypt xls
veya benzeri bir şey.