Excel-2003 !!!
Причёсываю свой Personal.xls
При его открытии производится настройка разных менюшек (добавляются/удаляются меню, кнопки и подменю)
Перед тем, как добавить макросом кнопку в меню, на всякий случай (чтобы не было дублирования) хорошо бы попытаться её удалить.
Добавить то стандартную кнопку можно просто по её ID, а вот как обратиться к .Controls не по индексу или капче кнопки (они могут меняться), а тоже по ID?
Вот, например, как я сейчас в выпадающее меню ячейки после "Вставить" добавляю стандартную команду "Вставить значения"
Но ведь при этом команда "Вст&авить значения" имеет вполне однозначный идентификатор ID:=370, а команда "Вставить" имеет ID:=22, которые, как я понимаю, не зависят ни от локализации, ни от версии Excel
Вот и встал вопрос: нельзя ли вместо обращения к стандартному элементу меню по его названию использовать обращение по его ID?
Что-то я не смог найти как
Причёсываю свой Personal.xls
При его открытии производится настройка разных менюшек (добавляются/удаляются меню, кнопки и подменю)
Перед тем, как добавить макросом кнопку в меню, на всякий случай (чтобы не было дублирования) хорошо бы попытаться её удалить.
Добавить то стандартную кнопку можно просто по её ID, а вот как обратиться к .Controls не по индексу или капче кнопки (они могут меняться), а тоже по ID?
Вот, например, как я сейчас в выпадающее меню ячейки после "Вставить" добавляю стандартную команду "Вставить значения"
Код (vb) Выделить
Private Sub PopupMenuCellChange()
On Error Resume Next
With Application.CommandBars("Cell"):
.Controls("Вст&авить значения").Delete
.Controls.Add ID:=370, Before:=.Controls("Вставить").Index + 1, Temporary:=True
End With
End SubОно, конечно, работает, но при смене наименований пунктов (например, в английской локали) работать перестанет, т.к. пункты "Вст&авить значения" и "Вставить" будут называться по-другому.Но ведь при этом команда "Вст&авить значения" имеет вполне однозначный идентификатор ID:=370, а команда "Вставить" имеет ID:=22, которые, как я понимаю, не зависят ни от локализации, ни от версии Excel
Вот и встал вопрос: нельзя ли вместо обращения к стандартному элементу меню по его названию использовать обращение по его ID?
Что-то я не смог найти как


)
