Измените как кодовое имя, так и имя формы элемента управления ActiveX optionButton в Excel vba

Excel VBA:
Я пытаюсь получить доступ к некоторым кнопкам параметров ActiveX через объект OLEObjects, но обнаруживаю, что даже при изменении значения (Имя) в окне свойств объекта , в качестве ключа по-прежнему требуется имя по умолчанию «OptionButton1».

Я знаю, что некоторые объекты в Excel VBA имеют кодовое имя и другое имя, которое также используется для ключа, чтобы добраться до него из OLEObjects, но я не знаю, как я могу изменить это «другое» имя.

Я передаю имя своего объекта в качестве параметра (в основном) функции, поэтому я не могу просто сделать:

ActiveSheet.optMyNewName.Value

или что-то еще. Мне нужно уметь это делать:

ActiveSheet.OLEObjects("optMyNewName").Object.Value

но в настоящее время работает только это:

ActiveSheet.OLEObjects("OptionButton1").Object.Value

person xdhmoore    schedule 14.07.2010    source источник


Ответы (1)


Если вы передаете строку в коллекцию OLEObjects, она использует свойство Caption в качестве ключа. Передайте заголовок в качестве параметра, и он должен работать.

person Dick Kusleika    schedule 14.07.2010