KutoolsforOffice — Одно решение — пять мощных инструментов.Меньше усилий — больше результата.

Как вставить или удалить строки на защищённом листе?

АвторСяоянДата изменения

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

Вставка или Удалить строки на защищённом листе

VBA: временное снятие защиты, вставка/удаление и автоматическое повторное включение защиты


Вставка или Удалить строки на защищённом листе

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

Следуйте этим пошаговым инструкциям, чтобы разрешить вставку и удаление строк на защищённом листе:

1.Выделите всю строку, в которой пользователям будет разрешено вставлять или удалять строки. Этот шаг определяет, где именно на защищённом листе будут доступны такие операции. После выделения строк щёлкните правой кнопкой мыши по выделению и выберите в контекстном меню пункт Установить формат ячейки. См. скриншот:

снимок экрана с выбором команды «Формат ячеек» после щелчка правой кнопкой мыши по выделенным строкам

2. В появившемся диалоговом окне Установить формат ячейки перейдите на вкладку Защита. Снимите флажок с поля Заблокировано, чтобы разблокировать эти конкретные ячейки или строки. Разблокировка обязательна — иначе пользователи не смогут вносить изменения, даже если у них есть другие разрешения. Будьте осторожны: не разблокируйте чувствительные области, которые должны оставаться защищёнными. См. скриншот:

снимок экрана с отключенной опцией «Защищаемая ячейка» в диалоговом окне «Формат ячеек»

3. Нажмите кнопку ОК, чтобы закрыть диалоговое окно. Затем перейдите на вкладку Рецензирование на ленте Excel и выберите команду Защитить лист, чтобы включить защиту листа. См. скриншот:

снимок экрана с включенной функцией «Защитить лист»

4. В появившемся диалоговом окне Защита листа вы увидите список с заголовком Разрешить всем пользователям данного листа. Установите флажки напротив пунктов Вставить строки и Удалить строки. При необходимости введите пароль для защиты листа и подтвердите его по запросу. Этот шаг крайне важен: он предоставляет пользователям только необходимые права на редактирование, сохраняя при этом безопасность остальной части листа. См. скриншот:

снимок экрана диалогового окна «Защитить лист» с указанным паролем и отмеченными опциями «Вставка строк» и «Удаление строк»

5. Наконец, нажмите кнопку ОК, чтобы включить защиту листа с новыми настройками. После этого вставка или удаление строк станут возможны только в указанных строках — в соответствии с заданными разрешениями и настройками разблокировки, а остальная часть листа останется неизменной. См. скриншот:

снимок экрана строк, которые можно удалять и вставлять на защищенном листе

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

Если вам необходимо разрешить вставку или удаление в более обширных областях листа либо требуется повышенная степень автоматизации, обратите внимание на приведённые ниже решения на основе VBA.


VBA: временное снятие защиты, вставка/удаление и автоматическое повторное включение защиты

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

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

1. Откройте лист, на котором нужно включить эту функциональность. Перейдите на вкладку Разработчик (если вкладка «Разработчик» не отображается, включите её через меню: Файл > Параметры > Настроить ленту Лента), затем нажмите кнопку Visual Basic. В открывшемся окне редактора VBA выберите команду Вставка > Модуль и вставьте в модуль следующий код:

Sub InsertRowInProtectedSheet()
    Dim ws As Worksheet
    Dim pwd As String
    Set ws = ActiveSheet
    pwd = InputBox("Enter sheet password:", "KutoolsforExcel")
    
    If pwd = "" Then Exit Sub
    
    On Error Resume Next
    ws.Unprotect Password:=pwd
    
    If Err.Number <> 0 Then
        MsgBox "Incorrect password or unprotect failed!", vbExclamation
        Exit Sub
    End If
    
    On Error GoTo 0
    Dim insertRow As Integer
    insertRow = Application.InputBox("Enter row number to insert:", "KutoolsforExcel", Type:=1)
    
    If insertRow > 0 Then
        ws.Rows(insertRow).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
        MsgBox "Row inserted at " & insertRow, vbInformation
    End If
    
    ws.Protect Password:=pwd, AllowInsertingRows:=True, AllowDeletingRows:=True
End Sub

Sub DeleteRowInProtectedSheet()
    Dim ws As Worksheet
    Dim pwd As String
    Set ws = ActiveSheet
    pwd = InputBox("Enter sheet password:", "KutoolsforExcel")
    
    If pwd = "" Then Exit Sub
    
    On Error Resume Next
    ws.Unprotect Password:=pwd
    
    If Err.Number <> 0 Then
        MsgBox "Incorrect password or unprotect failed!", vbExclamation
        Exit Sub
    End If
    
    On Error GoTo 0
    Dim delRow As Integer
    delRow = Application.InputBox("Enter row number to delete:", "KutoolsforExcel", Type:=1)
    
    If delRow > 0 Then
        ws.Rows(delRow).Delete
        MsgBox "Row " & delRow & " deleted.", vbInformation
    End If
    
    ws.Protect Password:=pwd, AllowInsertingRows:=True, AllowDeletingRows:=True
End Sub

2. Закройте редактор VBA. Чтобы вставить строку, нажмите клавиши Alt + F8, чтобы открыть диалоговое окно макросов, выберите макрос InsertRowInProtectedSheet и нажмите кнопку Выполнить; чтобы удалить строку, выберите макрос DeleteRowInProtectedSheet и нажмите кнопку Выполнить. Вам будет предложено ввести пароль от листа и указать номер строки для вставки или удаления. После завершения операции лист немедленно снова защищается, обеспечивая непрерывную безопасность. Не забудьте сохранить книгу в формате с поддержкой макросов ().xlsm) для дальнейшего использования.

Советы:

  • Всегда проверяйте, что у вас правильный пароль, прежде чем запускать макрос: ввод неверного пароля приведёт к блокировке автоматизации.
  • Если возникнет ошибка, проверьте введённые значения и убедитесь, что макросы разрешены в настройках Центра управления безопасностью Excel.

Лучшие инструменты повышения продуктивности в Office

🤖KUTOOLS AI Помощник: Преобразуйте Анализ данных с помощью:Интеллектуального выполнения   |  Генерации кода|  Создания пользовательские формулы  |  Анализа данных и построения диаграмм|  Вызова Расширенные функции…
Популярные функции:Поиск, выделение или Отметить дубликаты   |  Удалить пустые строки   |  Объединить столбцы или ячеек без потери данных   |  Округление без использования формул…
Супер ПОИСК:VLookup по нескольким критериям  |  VLookup по нескольким значениям  |   VLookup по нескольким листам   |   Распознавание нечетких соответствий…
Расширенный раскрывающийся список:Быстрое создание выпадающего списка   |  Зависимый выпадающий список   |  Выпадающий список с множественным выбором…
Управление столбцами:Добавление заданного количества столбцов|Перемещение столбцов|Переключение видимости скрытых столбцов|Сравнение диапазонов и столбцов…
Избранные функции:Сетка фокусировки   |  Просмотр дизайна   |Улучшенная строка формулы   | Управление рабочими книгами и листами   |  Библиотека ресурсов(автотекст)|  Выбор даты   |  Объединить листы  |  Шифрование/Расшифровать ячейки   | Отправка писем по списку   |  Супер фильтр   |   Специальный фильтр(Фильтр ячеек с жирным шрифтом/курсив/зачёркивание…) …
Лучшие наборы инструментов 15:12 Текстовыеинструменты(Добавить текст,Удалить определенные символы, …)|   50+Типыдиаграмм(Диаграмма Ганта, …)|   40+ Практические формулы(Рассчитать возраст на основе даты рождения, …)|   19 Инструментывставки(Вставить QR-код,Вставка изображения по пути, …)|   12 Инструментыпреобразования(Преобразовать в слова,Конвертация валют, …)|   7 Объединить и разделитьИнструменты(Расширенное объединение строк,Разделить ячейки, …)|… и многое другое
Используйте Kutools на предпочитаемом языке — поддержка английского, испанского, немецкого, французского, китайского и ещё 40+ языков!

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


Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу

  • Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна — вместо того чтобы использовать отдельные окна.
  • Повышает вашу продуктивность на 50 % и экономит сотни кликов мышью каждый день!

Все надстройки Kutools — один установщик

Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.

ExcelWordOutlookTabsPowerPoint
  • Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
  • Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
  • Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
  • 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
  • Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек