Как предотвратить удаление строк или столбцов в общем незащищенном рабочем листе?
Когда вы предоставляете доступ к рабочей книге другим пользователям, как можно предотвратить удаление ими столбцов или строк в общей рабочей книге без её защиты? Я нашел код VBA, который может предотвратить удаление других пользователями столбцов и строк в общей рабочей книге.
Предотвращение удаления строк или столбцов в общей рабочей книге с помощью VBA
Предотвращение удаления строк или столбцов в общей рабочей книге с помощью VBA
1. Нажмите Alt + F11, чтобы открыть окно Microsoft Visual Basic for Application.
2. Щелкните Вставить > Модуль, чтобы открыть окно Модуля, затем скопируйте следующий код VBA в это окно.
VBA: Предотвращение удаления строк или столбцов.
Sub StopDeleteRowCols()
'Updateby20221221
Dim xBarControl As CommandBarControl
Application.OnKey "^{-}", ""
For Each xBarControl In Application.CommandBars.FindControls(ID:=293)
xBarControl.Enabled = False
Next
For Each xBarControl In Application.CommandBars.FindControls(ID:=294)
xBarControl.Enabled = False
Next
End Sub
3. Нажмите кнопку Выполнить или клавишу F5 на клавиатуре для запуска этого кода.
Теперь, когда другие пользователи щелкают правой кнопкой мыши для удаления выбранных столбцов или строк, опция Удалить не будет доступна в контекстном меню. См. скриншот:
Кроме того, это предотвращает использование сочетания клавиш Ctrl + - для удаления строк или столбцов.
Примечание:
(1) Если вы уже предоставили доступ к своей рабочей книге через Рецензирование > Общий доступ к книге, вы больше не сможете добавлять какие-либо макросы VBA. Поэтому лучше добавьте VBA до предоставления общего доступа к книге.
(2) Этот код VBA отключит функцию Удалить в контекстном меню во всех книгах при щелчке правой кнопкой мыши по выбранным столбцам или строкам.
(3) Чтобы восстановить функцию Удалить в контекстном меню, замените оба значения False на True в приведенном выше коде VBA и снова запустите этот код.

Раскройте магию Excel с Kutools AI
- Умное выполнение: Выполняйте операции с ячейками, анализируйте данные и создавайте диаграммы — всё это посредством простых команд.
- Пользовательские формулы: Создавайте индивидуальные формулы для оптимизации ваших рабочих процессов.
- Кодирование VBA: Пишите и внедряйте код VBA без особых усилий.
- Интерпретация формул: Легко разбирайтесь в сложных формулах.
- Перевод текста: Преодолейте языковые барьеры в ваших таблицах.
Лучшие инструменты для повышения продуктивности в Office
Повысьте свои навыки работы в 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.





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