Excel VBA:
Я пытаюсь добраться до некоторых activex переключателей через объект OLEObjects, но я нахожу, что даже при том, что я изменяю значение (Имени) в окне свойств для объекта, это все еще требует имени по умолчанию "OptionButton1" как ключа.
Я знаю, что некоторые объекты в Excel VBA имеют кодовое название и другое имя, которое является также тем, используемым для ключа для получения до него от OLEObjects, но я не знаю, как я могу изменить это "другое" имя.
Я являюсь передающим в своем имени объекта в качестве параметра (в основном) к функции, таким образом, я не могу просто сделать:
ActiveSheet.optMyNewName.Value
или что бы то ни было. Я должен смочь сделать это:
ActiveSheet.OLEObjects("optMyNewName").Object.Value
но в настоящее время только это работает:
ActiveSheet.OLEObjects("OptionButton1").Object.Value
Если вы передаете строку в коллекцию OLEObjects, она использует свойство Caption в качестве ключа. Передайте надпись в качестве параметра, и все должно работать.