Как снять защиту листа в Excel, если забыли пароль

Как снять защиту листа в 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”.

Меняем имя

Если, когда вы пытаетесь переименовать файл, у вас не показывается расширение, то проделайте следующую процедуру:

  1. Перейдите в «Панель управления».
  2. Выберите тип просмотра “Мелкие значки” и найдите “Параметры папок” (также может называться “Параметры Проводника”).
  3. Панель управления

  4. Зайдите в раздел “Вид”, затем в поле “Дополнительные параметры” найдите пункт “Скрывать расширения для зарегистрированных типов файлов” и снимите с него галочку. Примените изменения.
  5. Настройка отображения

После проделанной процедуры вы без проблем сможете вручную пометь расширение любого файла.

Далее открываете архив и переходите в папку «xl», после в “worksheets”, где находятся листы в формате .xml. Листы в этом случае называются “sheet” и нумеруются по дате создания (sheet1, sheet2 и т.д.). Открыть файл нужно при помощи стандартного блокнота или специального реактора кода (например, NotePad++).

Работа с архивом

В открывшемся файле найдите фрагмент “sheetProtection”. Т.к. в файле будет много кода, рекомендуется воспользоваться быстрым поиском по содержимому при помощи сочетания клавиш Ctrl+F. Находите нужный блок, имеющий данную структуру ““sheetProtection переменная1=”” переменная2=””…”, более подробно можно видеть на скриншоте ниже. Для сброса пароля удаляете весь этот блок.

Работа с кодом

Если вы проделаете данную процедуру с листом, который был сохранён в программе версии 2010 года и выше, то потеряете все данные. В качестве решения данной проблемы удалите не весь блок, а только значение переменной “password”. Что касается версии начиная с 2016 года, то там нет переменной “password”, поэтому снять пароль при помощи архиватора в этом случае невозможно.

Когда закончите сохраните изменения и измените расширение файла обратно в .xlsx аналогичным образом, как меняли на .zip.

Данный способ позволяет снять пароль только с отдельных листов, поэтому если у вас полностью запароленный большой файл Excel с несколькими листами, то придётся снимать защиту с каждого вручную.

Способ 2: Удаление пароля через Макрос

В этом случае вам понадобится только сама таблица Excel и умение работать с консолью разработчика. По умолчанию панель разработчика не отображается в файле, чтобы её включить воспользуйтесь следующей инструкцией:

  1. Перейдите в пункт “файл” в левой части верхнего меню программы.
  2. Затем зайдите в “параметры”, в левом меню выберите “настройка ленты”.
  3. В поле “Основные вкладки” (находится справа) поставьте галочку напротив пункта “Разработчик”.
  4. вход в режим разработчика

В открывшемся окне разработчика найдите кнопку “Макрос” или воспользуйтесь комбинацией клавиш 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 не нужно обладать навыками профессионального хакера или скачивать дополнительное программное обеспечение. Последнее делать категорически не рекомендуется, т.к. вы можете подхватить вирус, который причинит серьёзный вред системе.

Расскажи друзьям в социальных сетях


   комментариев 15


  1. Валерий Рвачев
      28.07.2017

    Спасибо большое за статью. Написано четко, лаконично, без идиотских исковерканных словечек, которыми грешат многие в интернете.
    Но я не смог воспользоваться отличными способами, описанными в статье.
    Я попробовал первый вариант. У меня Microsoft Office 2010. Но после замены расширения .xlsx на .zip получил ответ программы:
    «Не удается открыть папку.
    Путь к сжатой ZIP-папке «С:\Users\Comp\Desktop\Логин 25.02.2017- копия.zip» содержит недопустимые знаки, из-за которых извлечение невозможно:-, »
    Попробовал второй вариант. Но при создании макроса возможно использовать только для открытых книг Excell, а открыть книгу невозможно без пароля. Если пароль есть, то зачем его искать? Так что у меня ничего не получилось. а в файле Excele я хранил пароли к многим сайтам и службам. А теперь вдруг он перестал открываться с паролем, которым я его открывал сотни раз.

    • Олег
        14.12.2018

      Данный макрос написан для снятия защиты с листа, а не с книги в целом.

  2. Яночка
      05.09.2017

    Валерий, согласна с вами тоже. А насчет хранения паролей в файле на ПК, очень сомнительная идея. Я лично храню их в письменном виде, от руки, отдельный блокнот-тетрадь, который в надежном месте, и только разве что после моей смерти может быть прочитан кем-то.

  3. Юлия
      09.10.2017

    ОГРОМНАЯ БЛАГОДАРНОСТЬ!!!!
    Все исправила ч/з макрос.
    Вы мне просто жизнь спасли!!!!

  4. Михаил
      02.11.2017

    Я проблему решил проще. У меня защищены были листы. Я Выбрал Разработчик->Visual Basic и в коде нашёл пароль.

    • Владимир
        04.11.2017

      Михаил, куда жать дальше, после входа в этот «Visual Basic»?
      Всё, что связано с «sheetProtection» не содержит никакой полезной информации.

  5. Сергей
      14.02.2018

    Супер! у меня получилось воспользоваться 2-м способом для снятия защиты с листов в Excel 2016.

    Кроме того, можно этот же макрос использовать для удаления паролей с листов других в файлах, не записывая каждый раз этот макрос в новом файле, а просто сохранить его один раз в каком-либо из файлов и потом открыть сначала файл с макросом, а затем тот файл, в котором надо удалить пароль, и Excel предложит запустить макрос из открытого файла с макросом. Надеюсь понятно объяснил 🙂

    • Жанбек
        13.11.2018

      Добрый день, Сергей!
      У меня тоже Excel 2016, но не получается разобраться, каким образом удалить пароль с защиты книги. К своему великому сожалению, забыл пароль от своего рабочего файла. Все записи по работе делал там, а теперь открыть не получается. Можете подсказать более детально??? Пожалуйста!!! Заранее спасибо!!!

      • Kait.15
          14.11.2018

        Добрый день. Что именно вам неясно из рекомендаций, приведенных во втором способе статьи?

        • Пахан
            11.10.2019

          в том, что при открытии файла просит пароль. не вводишь пароль, не сможешь работать дальше. что именно не ясно в работе с паролями? это не защита листа

  6. Evgeniy
      29.11.2018

    Спасибо, вы реально помогли! Макросы работают ))

  7. Олег
      14.12.2018

    Через макрос сломал пароль за 0,1сек. Респект вам и уважение. Через зип не получилось, видимо файл из офиса 2016 и в нем нет листов. Макрос рулит.

  8. Garis
      20.05.2019

    Автору респект!

    Мне помог 1-й способ. Просто удалил значение в структуре sheetProtection.

    Т.е. по шагам расскажу: после переименования в ZIP, вытащил из архива (не закрывая сам архив) sheet1.xml и открыл его Блокнотом, а там удалил значение в password=»В454″ => password=»», потом из архива удалил старый sheet1.xml, а этот новый, правленный запихнул в архив и переименовал «таблица.xlsx.zip» в «таблица.xlsx». Все робит 🙂

  9. Александр
      06.09.2019

    Спасибо, все работает!
    Можно проще макрос открывать, — открываем файл, нажимаем Alt+F11, сразу открывается панель макроса, затем правой кнопкой мыши нажимаем на лист, далее insert — module, на открывшейся странице вставляем код, нажимаем F5, или RUN на панельке, (кому как понравиться) и ВСЕ! от 10 до 35 сек.
    Еще раз — автору респект за код!

  10. Vladimir
      20.05.2020

    Как же его можно пересохранить, если он запаролен? А пароль забыт? Вы ж умные люди, зачем пишете чушь?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *