Вот простой способ добиться того, чего вы хотите. Для большинства из них вы можете использовать именно то, что вы видите в меню правой кнопки мыши. Например, для Insert
вы видите Insert...
.
Application.CommandBars("Cell").Controls("Insert...").Visible = True 'False
Аналогично для других. Я не нашел способ отключить Paste Options:
или значки в нем. Однако вы можете отключить Paste Special
в Paste Options:
, как я упоминал выше, используя Paste Special...
Примечание : Ну, это наименьшая из ваших проблем. Помните, что пользователи все еще могут использовать ленту или сочетания клавиш для достижения тех целей, которые вы отключили;)
Редактировать
К сожалению, у меня не работает. Это как-то связано с таблицами? потому что клетки являются частью таблицы! - Афшин Давуди 8 минут go
Да, для этого вы должны использовать
Application.CommandBars("List Range Popup").Controls("Delete").Visible = False
ДО
ПОСЛЕ
Афшин Давуди: как я могу отключить опции в контекстном меню "Колонка"? или ряды? (Из расширенного чата)
Использование
Application.CommandBars("Column").Controls("Delete").Visible = False
Application.CommandBars("Row").Controls("Delete").Visible = False