Как предотвратить удаление строк или столбцов в общем незащищенном рабочем листе?
Когда вы предоставляете доступ к рабочей книге другим пользователям, как можно предотвратить удаление ими столбцов или строк в общей рабочей книге без её защиты? Я нашел код 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% и сократите сотни кликов мышью ежедневно!