Как снять защиту листа в Excel, если забыли пароль
Табличный процессор Excel был разработана Microsoft ещё в 1985 году, с того времени его функциональность значительно расширилась, а интерфейс стал более удобным. Программа активно используется как финансистами, бухгалтерами, аналитиками, так и обычными пользователями. Функционал позволяет составлять сложные таблицы и делать расчёты по имеющимся в программе или внесёнными пользователем самостоятельно формулам, строить графики и диаграммы. Работа происходит на так называемых листах, которые включены в книгу (один документ Excel).
Снятие защиты паролем с Эксель
В Microsoft понимают, что файл может попасть не в те руки, поэтому дают возможность пользователю задать пароль для доступа к конкретному листу или всему документу. Есть возможность даже заблокировать отдельные ячейки от редактирования и/или просмотра. Но что делать, если забыли пароль, а в файле находятся важные данные? Пароль можно снять самостоятельно при помощи стандартных программ Windows.
Способ 1: Снять пароль при помощи архиватора
Данный способ лучше всего работает со старыми версиями программы (до версии от 2010 года). В последних версиях есть риск потери данных из-за новых параметров безопасности. Суть способа заключается в том, чтобы получить доступ к каждому листу отдельно. Для этого вам понадобится любой архиватор, который умеет работать с файлами .zip и инструмент для редактирования кода (подойдёт даже стандартный блокнот от Windows).
Работа может осуществляться только с файлами .xlsx, поэтому обратите внимание на то, в каком формате сохранён документ, т.к. старые версии Excel сохраняют документе в .xls формате. Если файл имеет расширение .xls, то пересохраните. Для этого откройте его в Excel и в верхнем меню выберите файл, а из выпадающего меню “Сохранить как”, далее в разделе “Тип файла” выбирайте “Книга Excel (.xlsx)”.
Далее требуется поменять расширение .xlsx на .zip. Для этого нажмите правой кнопкой мыши по файлу и выберите переименовать. В конце названия меняете расширение на .zip. Пример: “Таблица1.xlsx” переименовываете в “Таблица1.zip”.
Если, когда вы пытаетесь переименовать файл, у вас не показывается расширение, то проделайте следующую процедуру:
- Перейдите в «Панель управления».
- Выберите тип просмотра “Мелкие значки” и найдите “Параметры папок” (также может называться “Параметры Проводника”).
- Зайдите в раздел “Вид”, затем в поле “Дополнительные параметры” найдите пункт “Скрывать расширения для зарегистрированных типов файлов” и снимите с него галочку. Примените изменения.
После проделанной процедуры вы без проблем сможете вручную пометь расширение любого файла.
Далее открываете архив и переходите в папку «xl», после в “worksheets”, где находятся листы в формате .xml. Листы в этом случае называются “sheet” и нумеруются по дате создания (sheet1, sheet2 и т.д.). Открыть файл нужно при помощи стандартного блокнота или специального реактора кода (например, NotePad++).
В открывшемся файле найдите фрагмент “sheetProtection”. Т.к. в файле будет много кода, рекомендуется воспользоваться быстрым поиском по содержимому при помощи сочетания клавиш Ctrl+F. Находите нужный блок, имеющий данную структуру ““sheetProtection переменная1=”” переменная2=””…”, более подробно можно видеть на скриншоте ниже. Для сброса пароля удаляете весь этот блок.
Если вы проделаете данную процедуру с листом, который был сохранён в программе версии 2010 года и выше, то потеряете все данные. В качестве решения данной проблемы удалите не весь блок, а только значение переменной “password”. Что касается версии начиная с 2016 года, то там нет переменной “password”, поэтому снять пароль при помощи архиватора в этом случае невозможно.
Когда закончите сохраните изменения и измените расширение файла обратно в .xlsx аналогичным образом, как меняли на .zip.
Данный способ позволяет снять пароль только с отдельных листов, поэтому если у вас полностью запароленный большой файл Excel с несколькими листами, то придётся снимать защиту с каждого вручную.
Способ 2: Удаление пароля через Макрос
В этом случае вам понадобится только сама таблица Excel и умение работать с консолью разработчика. По умолчанию панель разработчика не отображается в файле, чтобы её включить воспользуйтесь следующей инструкцией:
- Перейдите в пункт “файл” в левой части верхнего меню программы.
- Затем зайдите в “параметры”, в левом меню выберите “настройка ленты”.
- В поле “Основные вкладки” (находится справа) поставьте галочку напротив пункта “Разработчик”.
В открывшемся окне разработчика найдите кнопку “Макрос” или воспользуйтесь комбинацией клавиш Alt+F8.
Заполняем поле с именем макроса (можно придумать любое имя, но в нём не должно быть русских букв и пробелов). Нажимаем “Создать”. Система открывает окно для ввода кода.
Вводите следующий код:
Sub Password_Cracker()
Dim t!
Dim i As Integer, j As Integer, k As Integer
Dim l As Integer, m As Integer, n As Long
Dim i1 As Integer, i2 As Integer, i3 As Integer
Dim i4 As Integer, i5 As Integer, i6 As Integer
Dim kennwort As String
t = Timer
On Error GoTo err_
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
kennwort = Chr(i) & Chr(j) & Chr(k) & Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6)
For n = 32 To 126
ActiveSheet.Unprotect kennwort & Chr(n)
MsgBox "Done in " & Format(Timer - t, "0.0 sec")
Exit Sub
nxt_: Next: Next: Next: Next: Next: Next
Next: Next: Next: Next: Next: Next
Exit Sub
err_: Resume nxt_
End Sub
Закрываем окно, сохранив при этом изменения. В режиме разработчика снова используйте комбинацию клавиш Alt+F8, чтобы увидеть созданный макрос. Выберите его и нажмите “Выполнить” в правом углу.
Макрос будет выполняться приблизительно 10-60 секунд в зависимости от мощности вашего компьютера и размера документа.
Заключение
Для самостоятельного снятия пароля с таблицы Excel не нужно обладать навыками профессионального хакера или скачивать дополнительное программное обеспечение. Последнее делать категорически не рекомендуется, т.к. вы можете подхватить вирус, который причинит серьёзный вред системе.
Спасибо большое за статью. Написано четко, лаконично, без идиотских исковерканных словечек, которыми грешат многие в интернете.
Но я не смог воспользоваться отличными способами, описанными в статье.
Я попробовал первый вариант. У меня Microsoft Office 2010. Но после замены расширения .xlsx на .zip получил ответ программы:
«Не удается открыть папку.
Путь к сжатой ZIP-папке «С:\Users\Comp\Desktop\Логин 25.02.2017- копия.zip» содержит недопустимые знаки, из-за которых извлечение невозможно:-, »
Попробовал второй вариант. Но при создании макроса возможно использовать только для открытых книг Excell, а открыть книгу невозможно без пароля. Если пароль есть, то зачем его искать? Так что у меня ничего не получилось. а в файле Excele я хранил пароли к многим сайтам и службам. А теперь вдруг он перестал открываться с паролем, которым я его открывал сотни раз.
Данный макрос написан для снятия защиты с листа, а не с книги в целом.
Валерий, согласна с вами тоже. А насчет хранения паролей в файле на ПК, очень сомнительная идея. Я лично храню их в письменном виде, от руки, отдельный блокнот-тетрадь, который в надежном месте, и только разве что после моей смерти может быть прочитан кем-то.
ОГРОМНАЯ БЛАГОДАРНОСТЬ!!!!
Все исправила ч/з макрос.
Вы мне просто жизнь спасли!!!!
Я проблему решил проще. У меня защищены были листы. Я Выбрал Разработчик->Visual Basic и в коде нашёл пароль.
Михаил, куда жать дальше, после входа в этот «Visual Basic»?
Всё, что связано с «sheetProtection» не содержит никакой полезной информации.
Супер! у меня получилось воспользоваться 2-м способом для снятия защиты с листов в Excel 2016.
Кроме того, можно этот же макрос использовать для удаления паролей с листов других в файлах, не записывая каждый раз этот макрос в новом файле, а просто сохранить его один раз в каком-либо из файлов и потом открыть сначала файл с макросом, а затем тот файл, в котором надо удалить пароль, и Excel предложит запустить макрос из открытого файла с макросом. Надеюсь понятно объяснил 🙂
Добрый день, Сергей!
У меня тоже Excel 2016, но не получается разобраться, каким образом удалить пароль с защиты книги. К своему великому сожалению, забыл пароль от своего рабочего файла. Все записи по работе делал там, а теперь открыть не получается. Можете подсказать более детально??? Пожалуйста!!! Заранее спасибо!!!
Добрый день. Что именно вам неясно из рекомендаций, приведенных во втором способе статьи?
в том, что при открытии файла просит пароль. не вводишь пароль, не сможешь работать дальше. что именно не ясно в работе с паролями? это не защита листа
Спасибо, вы реально помогли! Макросы работают ))
Через макрос сломал пароль за 0,1сек. Респект вам и уважение. Через зип не получилось, видимо файл из офиса 2016 и в нем нет листов. Макрос рулит.
Автору респект!
Мне помог 1-й способ. Просто удалил значение в структуре sheetProtection.
Т.е. по шагам расскажу: после переименования в ZIP, вытащил из архива (не закрывая сам архив) sheet1.xml и открыл его Блокнотом, а там удалил значение в password=»В454″ => password=»», потом из архива удалил старый sheet1.xml, а этот новый, правленный запихнул в архив и переименовал «таблица.xlsx.zip» в «таблица.xlsx». Все робит 🙂
Спасибо, все работает!
Можно проще макрос открывать, — открываем файл, нажимаем Alt+F11, сразу открывается панель макроса, затем правой кнопкой мыши нажимаем на лист, далее insert — module, на открывшейся странице вставляем код, нажимаем F5, или RUN на панельке, (кому как понравиться) и ВСЕ! от 10 до 35 сек.
Еще раз — автору респект за код!
Как же его можно пересохранить, если он запаролен? А пароль забыт? Вы ж умные люди, зачем пишете чушь?