Заблокировать определенные ячейки в excel. Защита ячеек от редактирования в Microsoft Excel

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

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

Как защитить все ячейки в файле Excel

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

  • Перейдите во вкладку “Рецензирование ” на панели инструментов => в подразделе “Защита ” кликните по иконке “Защитить лист “:
  • Во всплывающем окне, убедитесь, что установлена галочка напротив пункта ““:
  • Введите пароль в поле ““, если хотите, чтобы снять защиту могли только те пользователи, которым вы сообщили пароль:
  • Выберите из списка и отметьте “галочкой” те действия с ячейками листа, которые будут разрешены всем пользователям:
  • Нажмите “ОК

Если вы установили пароль, то система попросит вас повторно ввести его.

Теперь, всем пользователям, которые попытаются внести изменения или отредактировать значения ячеек будет отображаться такое сообщение:

Для того чтобы снять установленную защиту, перейдите во вкладку “Рецензирование “, и в разделе “Защита ” кликните по иконке “Снять защиту с листа “. После этого система попросит вас ввести пароль для снятия защиты.

Как защитить отдельные ячейки в Excel от изменений

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

Для примера рассмотрим простую таблицу с данными о доходах и расходах. Наша задача защитить от изменений ячейки в диапазоне B1:B3 .

Для того чтобы заблокировать отдельные ячейки проделаем следующие действия:

  • Выделим абсолютно все ячейки на листе Excel (с помощью сочетания клавиш CTRL + A ):
  • Перейдем на вкладку “Главная ” на панели инструментов => в разделе “Выравнивание ” кликнем по иконке в правом нижнем углу:
  • Во всплывающем окне перейдем на вкладку “Защита ” и уберем галочку с пункта “Защищаемая ячейка “:
  • Кликнем “ОК

Таким образом, мы отключили настройку Excel для ячеек всего листа, при котором все ячейки готовы к защите и блокировке.

  • Теперь, выделим ячейки, которые мы хотим защитить от редактирования (в нашем случае это диапазон ячеек B1:B3 );
  • Снова перейдем на вкладку “Главная ” на панели инструментов и в подразделе “Выравнивание ” кликнем по иконке в правом нижнем углу, как мы делали это раннее.
  • Во всплывающем окне, на вкладке “Защита ” поставим галочку в пункте “Защищаемая ячейка “:
  • Перейдем во вкладку “Рецензирование ” на панели инструментов и кликнем по иконке “Защитить лист “:
  • Во всплывающем окне, убедимся, что установлена галочка напротив пункта “Защитить лист и содержимое защищаемых ячеек “:
  • Введем пароль в поле “Пароль для отключения защиты листа “, чтобы снять защиту могли только те пользователи, которым мы сообщили пароль:

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

В Экселе не существует специального инструмента, предназначенного для блокировки отдельных ячеек, но данную процедуру можно осуществить с помощью защиты всего листа.

Способ 1: включение блокировки через вкладку «Файл»

Для того, чтобы защитить ячейку или диапазон нужно произвести действия, которые описаны ниже.


Теперь те диапазоны, которые мы ранее выделили и в настройках форматирования установили их защиту, будут недоступны для редактирования. В остальных областях можно производить любые действия и сохранять результаты.

Способ 2: включение блокировки через вкладку «Рецензирование»

Существует ещё один способ заблокировать диапазон от нежелательного изменения. Впрочем, этот вариант отличается от предыдущего способа только тем, что выполняется через другую вкладку.


Разблокировка диапазона

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

Данные в Excel можно защищать от постороннего вмешательства. Это важно, потому что иногда вы тратите много времени и сил на создание сводной таблицы или объемного массива, а другой человек случайно или намеренно изменяет либо вовсе удаляет все ваши труды.

Рассмотрим способы защиты документа Excel и его отдельных элементов.

Защита ячейки Excel от изменения

Как поставить защиту на ячейку в Excel? По умолчанию все ячейки в Excel защищаемые. Это легко проверить: кликаем на любую ячейку правой кнопкой, выбираем ФОРМАТ ЯЧЕЕК – ЗАЩИТА. Видим, что галочка на пункте ЗАЩИЩАЕМАЯ ЯЧЕЙКА проставлена. Но это еще не значит, что они уже защищены от изменений.

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

Рассмотрим пример. Имеем простую таблицу с данными. Такую таблицу нам нужно разослать в филиалы, чтобы магазины заполнили столбец ПРОДАННОЕ КОЛИЧЕСТВО и отправили обратно. Во избежание внесения каких-то изменений в другие ячейки, защитим их.

Для начала освободим от защиты те ячейки, куда сотрудники филиалов будут вносить изменения. Выделяем D4:D11, правой кнопкой вызываем меню, выбираем ФОРМАТ ЯЧЕЕК и убираем галочку с пункта ЗАЩИЩАЕМАЯ ЯЧЕЙКА.

Теперь выбираем вкладку РЕЦЕНЗИРОВАНИЕ – ЗАЩИТИТЬ ЛИСТ. Появляется такое окно, где будут проставлены 2 галочки. Первую из них мы убираем, чтобы исключить любое вмешательство сотрудников филиалов, кроме заполнения столбца ПРОДАННОЕ КОЛИЧЕСТВО. Придумываем пароль и нажимаем ОК.


Внимание! Не забудьте свой пароль!

Теперь в диапазон D4:D11 посторонние лица смогут только вписать какое-то значение. Т.к. мы ограничили все остальные действия, никто не сможет даже изменить цвет фона. Все средства форматирования на верхней панели инструментов не активные. Т.е. они не работают.



Защита книги Excel от редактирования

Если на одном компьютере работает несколько человек, то целесообразно защищать свои документы от редактирования третьими лицами. Можно ставить защиту не только на отдельные листы, но и на всю книгу.

Когда книга будет защищена, посторонние смогут открывать документ, видеть написанные данные, но переименовать листы, вставить новый, поменять их расположение и т.п. Попробуем.

Прежнее форматирование сохраняем. Т.е. у нас по-прежнему можно вносить изменения только в столбец ПРОДАННОЕ КОЛИЧЕСТВО. Чтобы защитить книгу полностью, на вкладке РЕЦЕНЗИРОВАНИЕ выбираем ЗАЩИТИТЬ КНИГУ. Оставляем галочки напротив пункта СТРУКТУРУ и придумываем пароль.

Теперь, если мы попробуем переименовать лист, у нас это не получится. Все команды серого цвета: они не работают.

Снимается защита с листа и книги теми же кнопками. При снятии система будет требовать тот же пароль.


Графики и диаграммы (5)
Работа с VB проектом (12)
Условное форматирование (5)
Списки и диапазоны (5)
Макросы(VBA процедуры) (63)
Разное (39)
Баги и глюки Excel (4)

Как разрешить изменять только выбранные ячейки?

Для данных на листе от изменений в Excel существует такая команда как . Найти её можно:

  • в Excel 2003 - Сервис -Защита -Защитить лист
  • в Excel 2007-2013 - вкладка Рецензирование (Review) -Защитить лист (Protect sheet)

Но при выполнении этой команды защищаются ВСЕ ячейки листа. Но бывают ситуации, когда защитить необходимо все ячейки, кроме А1 , С2 и D3 , чтобы изменения можно было делать только в этих ячейках, а значения остальных изменить было невозможно. Очень востребовано это в различного вида заполняемых шаблонах, в которых заполнять можно только определенные ячейки, а все остальные запретить к редактированию. Сделать это достаточно просто. Выделяем ячейки, которые необходимо разрешить изменять(А1 , С2 и D3); затем Ctrl+1 (или правая кнопка мыши-Формат ячеек (Format cells) )-вкладка Защита (Protection) . Снимаем галочку с пункта Защищаемая ячейка (Locked) . Теперь устанавливаем защиту на лист.

Если необходимо сделать обратное - защитить лишь несколько ячеек, а для всех остальных оставить возможность изменять их, то последовательность будет несколько иной:

После этого устанавливаете защиту на лист(как см. в самом начале статьи) и вуаля! Изменять можно только те ячейки, у которых снята галка с "Защищаемая ячейка" (Locked) .
При этом, если при защите листа снять галочку с пункта выделение заблокированных ячеек (Select locked cells) - выделять можно будет только те ячейки, которые разрешены для редактирования. Так же перемещение по ячейкам стрелками, TAB-ом и после нажатия Enter будет происходить исключительно по незащищенным ячейкам. Это может быть полезно, чтобы пользователю не пришлось самому угадывать в каких ячейках можно изменять значения, а в каких нет.

Так же на вкладке Защита (Protection) есть пункт Скрыть формулы (Hidden) . Если его установить вместе с установкой атрибута Защищаемая ячейка, то после установки защиты в защищенных ячейках невозможно будет увидеть формулы - только результаты их вычислений. Полезно, если хотите оставить возможность вводить какие-то параметры, а расчеты формулами оставить "за кадром".

Статья помогла? Поделись ссылкой с друзьями! Видеоуроки

{"Bottom bar":{"textstyle":"static","textpositionstatic":"bottom","textautohide":true,"textpositionmarginstatic":0,"textpositiondynamic":"bottomleft","textpositionmarginleft":24,"textpositionmarginright":24,"textpositionmargintop":24,"textpositionmarginbottom":24,"texteffect":"slide","texteffecteasing":"easeOutCubic","texteffectduration":600,"texteffectslidedirection":"left","texteffectslidedistance":30,"texteffectdelay":500,"texteffectseparate":false,"texteffect1":"slide","texteffectslidedirection1":"right","texteffectslidedistance1":120,"texteffecteasing1":"easeOutCubic","texteffectduration1":600,"texteffectdelay1":1000,"texteffect2":"slide","texteffectslidedirection2":"right","texteffectslidedistance2":120,"texteffecteasing2":"easeOutCubic","texteffectduration2":600,"texteffectdelay2":1500,"textcss":"display:block; padding:12px; text-align:left;","textbgcss":"display:block; position:absolute; top:0px; left:0px; width:100%; height:100%; background-color:#333333; opacity:0.6; filter:alpha(opacity=60);","titlecss":"display:block; position:relative; font:bold 14px \"Lucida Sans Unicode\",\"Lucida Grande\",sans-serif,Arial; color:#fff;","descriptioncss":"display:block; position:relative; font:12px \"Lucida Sans Unicode\",\"Lucida Grande\",sans-serif,Arial; color:#fff; margin-top:8px;","buttoncss":"display:block; position:relative; margin-top:8px;","texteffectresponsive":true,"texteffectresponsivesize":640,"titlecssresponsive":"font-size:12px;","descriptioncssresponsive":"display:none !important;","buttoncssresponsive":"","addgooglefonts":false,"googlefonts":"","textleftrightpercentforstatic":40}}

Иногда вы хотите разрешить пользователям изменять ячейки, содержащие данные, не разрешая менять формулы. Можно заблокировать ячейки, содержащие формулы, не защищая целый лист или книгу.

При создании электронной таблицы большинство из нас используют определенного рода формулы, Иногда, однако, мы не хотим, чтобы другие пользователи портили, удаляли или переписывали любые формулы, присутствующие в таблице, Самый простой и распространенный способ запрещения модификации формул - защитить лист, Однако защита листа не только мешает пользователям изменять формулы, она также подразумевает, что пользователи не смогут ввести или изменить никакие данные, Обычно вы не хотите заходить так далеко, По умолчанию все ячейки на листе заблокированы; однако это не имеет никакого эффекта, пока не применяется защита листа. Далее мы расскажем об очень простом способе защиты листа, когда блокируются и защищаются только ячейки с формулами.

Выберите все ячейки на листе, нажав сочетание клавиш Ctrl/Apple+A или щелкнув кнопку выделения листа (серый квадрат в месте пересечения столбца А и строки 1). Затем выберите команду Формат → Ячейки → Защита (Format → Cells → Protection) и сбросьте флажок Защищаемая ячейка (Locked). Щелкните кнопку ОК.

Теперь выделите любую ячейку, выберите команду Правка → Перейти (Edit → Go To) (Ctrl+G или F5) и щелкните кнопку Выделить (Special). Вы увидите диалоговое окно выделения группы ячеек (рис. 1.13).

В диалоговом окне Go To Special (Выделение группы ячеек) выберите переключатель Формулы (Formulas) и, если необходимо, выберите определенные типы формул, установив соответствующие флажки. Щелкните на кнопке ОК. Будут выделены только ячейки с формулами. Выберите команду Формат → Ячейки → Защита (Format → Cells → Protection) и установите флажок Защищаемая ячейка (Locked). Щелкните на кнопке ОК. Теперь выберите команду Сервис → Защита → Защитить лист (Tools → Protection → Protect Worksheet), чтобы защитить лист и, если необходимо, назначить пароль.

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

Первый подход совершенно не использует защиту листа, зато применяет проверку правильности данных.

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


Чтобы увидеть, о чем мы говорим, выделите любую ячейку, выберите команду Правка → Перейти (Edit → Go To) (Ctrl+G или F5) и щелкните кнопку Выделить (Special). В диалоговом окне Выделение группы ячеек (Go To Special) установите переключатель Формулы (Formulas) и, если необходимо, укажите только отдельные типы формул. Щелкните на кнопке ОК.

Теперь, когда выбраны только ячейки с формулами, перейдите на вкладку Данные → Проверка → Параметры (Data → Validation → Settings), в поле Тип данных (Allow) выберите Другой (Custom), а в поле Формула (Formula) введите =»» (рис. 1.14). Щелкните на кнопке ОК.

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

Последний метод позволит использовать все возможности Excel, но только когда вы находитесь в незаблокированной ячейке. Для начала удостоверьтесь, что заблокированы только те ячейки, которые вы хотите защитить, а все остальные не заблокированы. Правой кнопкой мыши щелкните ярлычок листа, в контекстном меню выберите пункт Исходный текст (View Code) и введите код из листинга 1.17.

1 2 3 4 5 6 7 8 // Листинг 1.17 Private Sub Worksheet_SelectionChange(ByVal Target As Range ) If Target. Locked = True Then Me. Protect Password:= "Secret" Else Me. Unprotect Password:= "Secret" End If End Sub

// Листинг 1.17 Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Locked = True Then Me.Protect Password:="Secret" Else Me.Unprotect Password:="Secret" End If End Sub

Если вы не хотите использовать пароль, уберите строку Password:=«Secret». Если вы указали пароль, измените слово Secret на ваш пароль. Нажмите сочетание клавиш Alt/Apple+Q или щелкните крестик в правом верхнем углу окна, чтобы вернуться в Excel и сохранить книгу. Теперь каждый раз, когда вы будете выбирать заблокированную ячейку, ваш лист будет автоматически защищать себя. Как только вы выберете незаблокированную ячейку, лист автоматически снимет с себя защиту.

Этот трюк работает не идеально, хотя обычно вполне сносно. Ключевое слово, используемое в коде, Target, относится только к ячейке, активной на время выбора. Поэтому важно помнить, что, если пользователь выберет диапазон ячеек (где активные ячейки будут не заблокированы), он сможет удалить весь выделенный диапазон, так как целевая ячейка не заблокирована и, следовательно, лист снимает с себя защиту.

Поделиться