Я делаю небольшое приложение Excel + vba, и я застрял. Я знаю, что используя
Application.CommandBars("Cell").Controls.*
Я могу изменить контекстное меню, чтобы показывать только определенные опции для конкретной ячейки (конечно, с дополнительным кодом).
Но есть ли способ изменить меню, когда я нажимаю правую кнопку мыши над автофигурой?
Я использовал что-то вроде
(...)
'checking autoshape position
sh_le = sh.Left
sh_to = sh.Top
sh_ri = sh.Left + sh.Width
sh_do = sh.Top + sh.Height
'checking clicked cell position
cc_le = cel.Left
cc_to = cel.Top
cc_ri = cel.Left + cel.Width
cc_do = cel.Top + cel.Height
If (sh_le <= cc_le) And (sh_to <= cc_to) And (sh_ri >= cc_ri) And (sh_do >= cc_do) Then
'build custom menu
end if
Это выглядит хорошо (по крайней мере, я так думаю :) - но когда я нажимаю выше формы, Worksheet_BeforeRightClick
не запускается. Есть ли другой способ сделать это? Буду благодарен за любую информацию.