VBA Незащищенный лист
VBA Незащищенный лист
У нас есть опция в Excel, с помощью которой мы можем защитить листы и файлы Excel от удаления, переименования и сохранения данных от любых других изменений, которые не требуются. Этот параметр называется « Защитить лист» и « Защитить книгу», который находится в разделе « Изменения » на ленте меню « Просмотр» . Мы можем установить пароль, с помощью которого мы можем сохранить выбранный лист от любых изменений. Но то, что я говорю, это также может быть автоматизировано с использованием кода VBA. Да, мы можем создать код или макрос, с помощью которого мы можем автоматически заблокировать лист и рабочую книгу. Но эта статья посвящена снятию защиты с листа.
Снятие защиты листа также довольно простой процесс, как защита листа. Чтобы снять защиту листа, нам нужно ввести пароль, который мы использовали при блокировке этого листа. Чтобы снять защиту листа, нам просто нужно выбрать имя листа и функцию Unprotect . Если это доступно в VBA, то это просто однострочный код. Но если это не так, то нам нужно искать другой способ сделать это, что мы увидим в следующих примерах.
Как снять защиту с листа в Excel VBA?
Мы узнаем, как снять защиту с листа в Excel, используя код VBA.
Вы можете скачать этот шаблон Excel для защиты листа VBA здесь — Шаблон Excel для защиты листа VBA
VBA Unprotect Sheet — Пример № 1
Сначала мы увидим простой пример снятия защиты с листа. Для этого выполните следующие действия:
Шаг 1: Сначала откройте модуль на вкладке меню «Вставка», как показано ниже.
Шаг 2: Теперь напишите подпроцедуру листа VBA Unprotect. Или мы можем выбрать любое другое имя, чтобы определить его.
Код:
Шаг 3: Определите переменную с именем Worksheet под любым именем. Предпочтительно имя, которое напоминает рабочий лист, такой как ExSheet
Код:
Шаг 4: Теперь затем установите определенную переменную рабочего листа с именем листа, который мы хотим снять с защиты. Здесь имя этого листа — Sheet1 .
Код:
Шаг 5: Теперь назначьте функцию Unprotect, которая есть в раскрывающемся списке VBA, переменной ExSheet рабочей таблицы .
Код:
Шаг 6: Теперь дайте пароль, который мы дали для блокировки этого листа. Здесь этот пароль «Open1212». И это может быть все, что зависит от выбора пользователя.
Код:
Шаг 7: Теперь сначала мы защитим Sheet1, нажав на вкладку меню Review и выбрав опцию Protect Sheet .
Шаг 8: Введите пароль, который мы хотим, и нажмите Ok, чтобы защитить лист.
Шаг 9: Введите пароль еще раз для подтверждения.
Шаг 10: Как только мы это сделаем, мы увидим, что мы ничего не можем изменить в этом листе, даже если мы попытаемся это сделать. Теперь, чтобы снять защиту листа, мы скомпилируем наш написанный код и запустим его.
Мы увидим, как только наш код будет выполнен, мы теперь можем вносить любые изменения в Sheet1 .
Шаг 11: Что если мы удалим или изменим строку кода, в которую мы вставили пароль, и сделаем так, чтобы функция Unprotect работала, как показано ниже. Посмотрим, что будет, если мы так сделаем.
Код:
Шаг 12: Теперь снова запустите полный код. Посмотрим, появится сообщение, в котором будет предложено ввести пароль. Введите здесь пароль, который мы выбрали при защите листа, и нажмите ОК.
Также с помощью этого процесса мы можем снять защиту листа, который мы хотим.
VBA Unprotect Sheet — Пример № 2
Есть еще один способ снять защиту с листа. Это самый простой и простой способ сделать это. Для этого выполните следующие шаги:
Шаг 1: Запишите подпроцедуру для VBA Unprotect, как показано ниже.
Код:
Шаг 2: Используйте функцию «Рабочие листы» и выберите лист, который мы хотим снять с защиты. Здесь снова этот лист — Sheet1 .
Код:
Шаг 3: Подобным образом, как показано в примере-1, мы будем использовать команду Unprotect вместе с паролем, который мы использовали при блокировке листа. Здесь наш пароль для снятия защиты также совпадает с « Open1212 ».
Код:
Теперь наш код завершен. Чтобы проверить это, сначала защитите лист так же, как мы это делали в примере-1, и запустите этот код, чтобы снять защиту.
VBA Unprotect Sheet — Пример № 3
Что если я скажу, мы снова можем написать код, в котором нам не нужно выбирать имя листа, который мы хотим снять с защиты. Да, это можно сделать с помощью цикла. Для этого выполните следующие шаги:
Шаг 1: Снова для этого откройте Модуль и напишите подпроцедуру листа VBA Unprotect, как показано ниже.
Код:
Шаг 2: Используйте DIM, чтобы определить переменную для Worksheet как Exsheet. Это та же самая строка, которую мы использовали в приведенных выше примерах.
Код:
Шаг 3: Откройте цикл For-Next, где мы будем записывать условия защиты листа.
Код:
Шаг 4. Запишите условие для каждой открытой активной рабочей книги и выберите текущую активную рабочую таблицу, как показано ниже.
Код:
Шаг 5: Теперь аналогично тому, как показано в приведенных выше примерах, мы будем использовать определенные переменные вместе с функцией Unprotect, чтобы снять защиту листа. Здесь также мы можем или не можем использовать пароль. Это необязательный способ.
Код:
Скомпилируйте код и запустите, если ошибки не найдены.
Вот как мы можем снять защиту с любого открытого текущего рабочего листа, даже не выбрав имя и последовательность этого. Этот код автоматически учитывает тот лист, который в данный момент выбран и открыт.
Плюсы Excel VBA Снять защиту листа
- Вышеуказанные процессы и примеры являются наиболее простыми в применении.
- Мы можем снять защиту листа обоими способами, указав сам пароль в коде или не указав пароль.
- Это работает так же, как мы вручную снимаем защиту листа.
То, что нужно запомнить
- Поскольку процесс довольно прост в реализации, автоматизация может не привести к каким-либо улучшениям.
- Мы можем менять пароль каждый раз, когда мы переделываем процесс защиты и снятия защиты с листа.
- Мы можем выбрать имя листа или последовательность листа, который мы хотим снять защиту.
- И когда это будет сделано, сохраните код в Macro, включите лист Excel, чтобы защитить код VBA от потери.
Рекомендуемые статьи
Это руководство по VBA Unprotect Sheet. Здесь мы обсудим, как снять защиту листа в Excel, используя код VBA, а также с практическими примерами и загружаемым шаблоном Excel. Вы также можете просмотреть наши другие предлагаемые статьи —
Как установить защиту листа в Excel?
Перейдите на вкладку «Защита» и снимите галочку на против опции «Защищаемая ячейка». Нажмите ОК. Выберите инструмент «Рицензирование»-«Защитить лист».
Как сделать защищенный лист Excel?
Для включения защиты текущего листа в Excel 2003 и старше — выберите в меню Сервис — Защита — Защитить лист (Tools — Protection — Protect worksheet), а в Excel 2007 и новее — нажмите кнопку Защитить лист (Protect Sheet) на вкладке Рецензирование (Reveiw).
Как поставить защиту листа?
Шаг 2. Защита листа
- На вкладке Рецензирование нажмите кнопку Защитить лист.
- В списке Разрешить всем пользователям этого листа установите флажки для элементов, изменение которых должно быть доступно пользователям. Параметр …
- При желании можно ввести пароль в поле Пароль для отключения защиты листа и нажать кнопку ОК.
Как поставить защиту на столбец Эксель?
- Если лист защищен, сделайте следующее: …
- Выделите лист целиком, нажав кнопку Выделить все.
- На вкладке Главная щелкните всплывающее кнопку запуска Формат шрифта ячейки. …
- Во всплываемом окне Формат ячеек на вкладке Защита отоберем поле Блокировка и нажмите кнопку ОК.
Как снять защиту листа в Экселе не зная пароль?
Для снятия защиты листа выполняем следующие действия. Переключаемся во вкладку “Рецензирование”. Нажимаем кнопку “Снять защиту листа”, которая расположена в группе инструментов “Защита”. Появится небольшое окошко, где вводим ранее заданный пароль и щелкаем OK.
Как в Экселе сделать раскрывающийся список в ячейке?
- Выберите ячейки, в которой должен отображаться список.
- На ленте на вкладке «Данные» щелкните «Проверка данных».
- На вкладке «Параметры» в поле «Тип данных» выберите пункт «Список».
- Щелкните в поле «Источник» и введите текст или числа (разделенные запятыми), которые должны появиться в списке.
Как защитить лист Excel?
Защита файла Excel
- На вкладке Файл выберите пункт Сведения.
- Нажмите кнопку Защита книги и выберите пункт Зашифровать с использованием пароля.
- Введите пароль в поле Пароль и нажмите кнопку ОК.
- Еще раз введите пароль в поле Подтверждение и нажмите кнопку ОК.
Как защитить книгу Эксель от редактирования?
Защита структуры книги
- Нажмите кнопку «>защитить книгу». Примечание: Вариант окна доступен только в Excel 2007, Excel 2010, Excel для Mac 2011 и Excel 2016 для Mac. …
- Введите пароль в поле Пароль. Важно: Защита паролем необязательна. …
- Выберите «ОК»,введите пароль еще раз, чтобы подтвердить его, а затем снова выберите «ОК».
Как сделать excel файл только для чтения?
Сохранение в файле, доступном только для чтения
- Нажмите кнопку Microsoft Office. и выберите команду Сохранить или Сохранить как, если вы раньше уже сохраняли документ.
- Щелкните Сервис.
- Щелкните Общие параметры.
- Установите флажок рекомендовать доступ только для чтения.
- Нажмите кнопку «ОК».
- Сохраните документ.
Как защитить файл Excel от редактирования другими пользователями?
Защита структуры книги
- Выберите Рецензирование > Защитить книгу . …
- Введите пароль в поле Пароль . …
- В Excel для Windows нажмите кнопку ОК и введите пароль еще раз, чтобы подтвердить его, а затем снова нажмите кнопку ОК .
Как защитить все листы Excel от редактирования?
Как защитить все листы книги Excel
- Перейдите на вкладку VBA-Excel.
- Откройте меню Диспетчеры и выберите Диспетчер листов
- Выберите листы, на которые хотите установить пароль. …
- Откроется диалоговое окно Защита листов книги. …
- После выбора уровня защиты осталось указать Пароль и нажать кнопку Защитить.
Как защитить лист в Excel от копирования?
Выделите на листе ячейки, которые необходимо заблокировать. Снова нажмите клавиши CTRL+SHIFT+F. На вкладке Защита установите флажок Защищаемая ячейка и нажмите кнопку ОК. На вкладке Рецензирование выберите команду Защитить лист.
Как снять защиту книги в Excel 2003 если забыл пароль?
Для того чтобы снять защиту листа в Excel 2003 необходимо выбрать пункт меню Сервис/Защита/Снять защиту листа… Если при установке защиты листа использовался пароль, то при снятии защиты появится диалоговое окно «Снять защиту листа», предусматривающее ввод пароля для отключения защиты листа.
Защита в Excel, ваши данные под присмотром
Здравствуйте, уважаемые читатели. Мне приходит много Ваших вопросов на одну важную тему: защита листа Excel, защита документа, как установить пароль на лист, как снять пароль. Короче говоря, народ интересуется способами защиты своих данных в Эксель, сохранения структуры листа, защиты формул от изменения. К счастью, в Эксель есть возможность защитить проект от изменений, и сегодня мы будем с ними разбираться.
Всего есть три способа защиты:
- Защита листа от изменений;
- Защита книги от изменения структуры, установка пароля на открытие документа;
- Защита кода VBA и макросов.
Давайте детально разберемся с этим функционалом.
Как выбрать защищаемые ячейки
Если нужно защитить лишь некоторые ячейки – выберите, какие подлежат защите, а какие нет. По умолчанию, все ячейки листа защищаемые, т.е. при включении защиты, доступ к ним будет ограничен. На практике, нужно ограничивать доступ лишь к ограниченному количеству ячеек. Например, мне часто приходится блокировать доступ к формулам, чтобы пользователи их не изменяли. Остальные данные защищать не требуется. Особенно, если в них хранятся исходные данные для расчетов.
Чтобы выбрать, будет ли ячейка защищена, кликните по ней правой кнопкой мыши и в контекстном меню выберите «Формат ячеек». Перейдите во вкладку защита. Здесь снимите, или установите галочку «Защищаемая ячейка».
Если в этом окне установить галку «скрыть формулы», при защите ячейки, в строке формул будет отображаться значение, а не формула.
Я рекомендую указывать защищаемые ячейки так:
- Выделить все ячейки, кликнув мышью в левом верхнем углу окна, слева от «А» и выше «1»;
- Нажать Ctrl+1 для вызова окна «Формат ячеек»;
- На вкладке защита снять галочку «Защищаемая ячейка»;
- Далее поочередно выделять массивы ячеек, которые нужно защитить от изменений, и вызывая меню «Формат ячеек», устанавливать галочку «Защищаемая ячейка».
Применяя этот простой алгоритм, Вы будете уверены, что все нужные в работе ячейки не будут заблокированы.
Как защитить лист Excel
Когда Вы определились с ячейками листа, которые нужно защитить, давайте установим блокировки. Чтобы установить защиту листа, выполните на ленте: Рецензирование – Изменения – Защитить лист .
Откроется окно со списком действий, которые разрешены пользователям. Установите галочки напротив тех действий, которые разрешены:
- Выделение заблокированных ячеек – выделение ячеек, находящихся «под защитой». Если галочка снята, клик по защищенной ячейке ни к чему не приведет;
- Выделение незаблокированных ячеек – то же, что и в предыдущем пункте, но касаемо незаблокированных ячеек;
- Форматирование ячеек – разрешаем форматировать ячейки, которые заблокированы
- Форматирование столбцов – изменение ширины, сокрытие и отображение, вставка и удаление столбцов;
- Форматирование строк — изменение высоты, сокрытие и отображение, вставка и удаление строк;
- Удаление столбцов – ограничение только на удаление;
- Удаление строк – аналогично предыдущему;
- Сортировка – разрешение на сортировку диапазонов, не содержащих защищаемых ячеек;
- Использование автофильтра – разрешаем или запрещаем пользоваться автофильтром;
- Использование сводных таблиц и сводных диаграмм— разрешаем или запрещаем использовать сводные таблицы и диаграммы;
- Изменение объектов – разрешить изменение диаграмм и графических объектов (фигур, SmartArt, WordArt, изображений и уравнений)
- Изменение сценариев – разрешение на использование сценариев.
Выбрав нужные разрешения, можно задать пароль для снятия защиты с листа в соответствующем поле (но это не обязательно).
Далее нажимаете Ок и сохраняете рабочую книгу. Все изменения вступят в силу сразу же.
Как снять защиту с листа
Чтобы снять установленную защиту – нажмите на ленте: Рецензирование – Изменения – Снять защиту с листа .
Если лист был защищен паролем, программа попросит его ввести. Если Вы не знаете пароля – снять защиту не удастся.
Как защитить файл Эксель
Разработчики предлагают нам несколько способов защиты рабочей книги:
- Задать пароль на открытие книги. Чтобы защитить рабочие документы от нежелательного просмотра –нажмите на ленте: Файл – Защита книги – Зашифровать с использованием пароля.
В открывшемся окне задайте пароль на открытие, нажмите Ок , повторите пароль и снова Ок . Запишите установленный пароль, чтобы не потерять его!
Чтобы снять пароль на открытие – выполните на ленте те же команды, но поле для пароля оставьте пустым.
- Защитить структуру книги от изменений. Для этого нажмите на ленте Файл – Защита книги – Защитить структуру книги .
При необходимости, задайте пароль, иначе снять защиту сможет любой пользователь. Такая защита запрещает создание, удаление, сокрытие, отображение рабочих листов.
Чтобы снять защиту структуры, повторите те же действия, которые производили для установки;
- Финализирование рабочей книги. Эта опция позволяет временно отключить любые изменения для рабочей книги. Она будет открываться только для чтения. Чтобы выполнить финализирование, нажмите на ленте: Файл – Защита книги – Пометить как окончательный .
Чтобы отменить пометку – выполните те же действия, что и для финализирования. Еще один способ – нажмите « Все равно редактировать » в строке-предупреждении вверху рабочего листа.
Как видим, финализирование несет, в большей степени, информационную составляющую, сообщает, что документ завершен. Для этого инструмента не предусмотрено паролей.
Так же, можно обеспечить определенную долю защиты добавлением цифровой подписи, но этот инструмент я раскрывать не буду в виду его низкой востребованности.
Уж точно защитит рабочую книгу от изменений сохранение в формате PDF. Для этого при сохранении файла выберите Тип файла «PDF».
Защита VBA-проекта и макросов
Если у Вас есть макросы, или VBA-код, который нужно защитить, выполните такую последовательность действий:
- Нажмите Alt+F11 для открытия редактора Visual Basic (либо откройте его другим известным Вам способом);
- В окне «Project» выберите нужный Вам модуль, кликните по нему правой кнопкой мыши;
- В контекстном меню выберите «VBAProject Properties…»
- В открывшемся окне «VBAProject – Project Properties» перейдите на вкладку «Protection».
- Установите галочку «Lock project for viewing» и запишите пароль в поля «Password» и «Confirm Password».
- Жмите Ок , пароль на просмотр и изменение макросов будет применен после следующего открытия файла.
Соответственно, чтобы отменить установку пароля, сделайте обратное действие.
Уточню, что продукты Microsoft Office, в том числе и Эксель, весьма лояльны к программам, подбирающим пароли доступа. Поэтому, перечисленные здесь виды защиты не уберегут Ваши документы абсолютно от всех угроз. Поэтому, не размещайте Вашу коммерческую и личную информацию для публичного доступа, ведь она может быть использована профессиональными мошенниками. Тем не менее, для работы в пределах офиса, эти инструменты вполне подходят.
Вот и все. Как всегда, жду Ваших комментариев с вопросами.
Следующая публикация у нас мегаважная – поиск и исправление ошибок в расчетах. Обязательно для прочтения!
План действий, если обнаружен документ Excel с защищенным листом
Составляющий компонент офисного пакета — Microsoft Excel давно, и вполне заслуженно, стал главным инструментом в сферах бизнеса. Наиболее активно им пользуются бухгалтера, сметчики, математики и бизнесмены.
Многие, чтобы защитить свои расчеты от посторонних, ставят защиту на книгу Excel, либо защищают отдельный лист. Если это информация, предназначенная только владельцу — проблем не возникает. Но чаще она предназначена для работы сотрудников фирмы. Файл отправляют по почте, забывая снять защиту, или не предупредив адресата о существовании такого листа в файле.
Работа с Excel 2003
Поставлена задача добавить список на странице. При попытке внести следующий порядковый номер вы сталкиваетесь с сообщением: ячейка или диаграмма защищена от изменений.
План действий вам подсказывает сам Excel. Идем по пути: Сервис → Защита → Снять защиту листа.
Работа с Excel 2007, 2010
В данном варианте Excel другое меню, вместо «Сервис» используется: «Рецензирование» → «Снять защиту листа» (группа «Изменения»).
Сброс пароля защищенного листа
Если прислали файл Excel, в котором лист защищен паролем и владелец недоступен или, банально, забыл пароль. Перед пользователем единственная задача — сбросить пароль, чтобы получить возможность работать с данной страницей.
- Используя надстройки.
- Используя архиватор и блокнот.
Находим и устанавливаем макрос, который выполняет нашу задачу.
Установка надстройки
- Скачанный макрос (надстройку) помещаем в папку Addins (папка макросов по умолчанию).
- Переходим по пути Сервис → надстройки → обзор.
- Выбираем нужный файл.
- Устанавливаем.
Запуск макроса выполняется по пути из п.2. установки макроса. Снимаем защиту посредством сброса пароля для активного листа.
После запуска создается ощущение, что программа зависла, потому что процесс занимает около двух минут, после получим сообщение.
Использование архиватора и блокнота
- Присваиваем файлу расширение Zip.
- Открываем имеющимся архиватором, например, WinRar.
- Среди файлов архива будет sheet1.xml. Откроем его любым текстовым редактором (например блокнотом).
- Находим текст sheetProtection password.
- Удаляем значение password (то, что стоит в кавычках).
- Либо используем данное значение в качестве пароля защиты листа.
Если советы статьи не помогли вам или у вас есть вопрос по Windows или продуктам Microsoft напишите нам. Вместе мы постараемся найти ответ.
25.Защита информации в ms Excel.
Excel предоставляет пользователю несколько «уровней» защиты — от простой защиты отдельных ячеек до шифрования всего файла симметричным алгоритмом семейства RC4. Разберем их последовательно.
Уровень 0. Защита от ввода некорректных данных в ячейку
Самый простой способ. Позволяет проверять что именно пользователь вводит в определенные ячейки и не разрешает вводить недопустимые данные (например, отрицательную цену или дробное количество или дату октябрьской революции вместо даты заключения договора и т.п.) Чтобы задать такую проверку ввода, необходимо выделить ячейки и выбрать в меню Данные — Проверка (Data — Validation). На вкладке Параметры из выпадающего списка можно выбрать тип разрешенных к вводу данных.
Уровень 1. Защита ячеек листа от изменений
Мы можем полностью или выборочно запретить пользователю менять содержимое ячеек любого заданного листа. Для установки подобной защиты следуйте простому алгоритму:
Выделите ячейки, которые не надо защищать (если таковые есть) и в меню Формат — Ячейки — вкладка Защита снимите флажок Защищаемая ячейка. Все ячейки, для которых этот флажок останется установленным, будут защищены при включении защиты листа.
Для включения защиты текущего листа выберите в меню Сервис — Защита — Защитить лист. В открывшемся диалоговом окне можно задать пароль (он будет нужен, чтобы кто попало не мог снять защиту) и при помощи списка флажков разрешить исключения:
Т.е., если мы хотим оставить пользователю возможность, например, форматировать защищенные и незащищенные ячейки, необходимо установить первых три флажка. Также можно разрешить пользователям использовать сортировку, автофильтр и другие удобные средства работы с таблицами.
Уровень 2. Выборочная защита диапазонов для разных пользователей
Если предполагается, что с файлом будут работать несколько пользователей, причем каждый из них должен иметь доступ в свою область листа, то можно установить защиту листа с разными паролями на разные диапазоны ячеек.
Чтобы сделать это выберите в меню Сервис — Защита — Разрешить изменение диапазонов .
В появившемся окне необходимо нажать кнопку Создать и ввести имя диапазона, адреса ячеек, входящих в этот диапазон и пароль для доступа к этому диапазону.
Повторите эти действия для каждого из диапазонов разных пользователей, пока все они не окажутся в списке. Теперь можно нажать кнопку Защитить лист (см. предыдущий пункт) и включить защиту всего листа.
Теперь при попытке доступа к любому из защищенных диапазонов из списка, Excel будет требовать пароль именно для этого диапазона, т.е. каждый пользователь будет работать «в своем огороде».
Уровень 3. Защита листов книги
Если необходимо защититься от:
удаления, переименования, перемещения листов в книге
изменения закрепленных областей («шапки» и т.п.)
нежелательных изменений структуры (сворачивание строк/столбцов при помощи кнопок «плюс/минус»)
возможности сворачивать/перемещать/изменять размеры окна книги внутри окна Excel то неободима защита листов книги через меню Сервис — Защита — Защитить книгу .
Уровень 4. Шифрование файла
При необходимости, Excel предоставляет возможность зашифровать весь файл книги, используя богатый набор различных алгоритмов шифрования. Такую защиту можно включить в меню Сервис — Параметры — вкладка Безопасность.
Мы можем ввести два различных пароля — на открытие файла (только чтение) и на изменение. Тип (алгоритм) шифрования выбирается после нажатия на кнопку Дополнительно (Advanced).
Защита данных в ячейках
Для защиты отдельных ячеек надо воспользоваться командой «Сервис»-«Защита»-«Защитить лист». Прежде чем защищать лист, выделите ячейки, которые надо оставить незаблокированными, а затем в меню «Формат» выберите команду «Ячейки». В открывшемся окне диалога «Формат ячеек» на вкладке «Защита» снимите флажок «Защищаемая ячейка».
Скрытие ячеек и листов
Чтобы включить режим скрытия формул, надо:
выделить нужные ячейки;
выбрать «Формат»-«Ячейки» (Ctrl+1);
на вкладке «Защита» установить флажок «Скрыть формулы»;
выбрать «Сервис»-«Защита»-«Защитить лист»;
в окне диалога «Защитить лист» установить флажок «Содержимого».
После этого при активизации ячеек, содержащих скрытые формулы, эти самые формулы не выводятся в строке формул, хотя результаты вычислений видны.