Профессиональные приемы работы в Microsoft Excel

Обмен опытом => Microsoft Excel => Тема начата: Dr_Lex от 17.04.2015, 13:32

Название: Управление элементами Active X с помощью VBA
Отправлено: Dr_Lex от 17.04.2015, 13:32
Поиском воспользоваться не получается, на любой запрос пишет: "Длина слова должна быть хотя бы в два символа." Так что извините, если уже было.

Есть файл приём заказа. Дабы оператор не забывал убирать какие-то пункты и вообще меньше времени тратил на ввод данных, хочу сделать макрос, который, после нажатия на кнопку, меняет все данные на первоначальные. С VBA знаком лишь понаслышке, так что столкнулся с проблемой. Данные в ячейках поменять не проблема, а вот то, что касается элементов управления Active X не хочет работать. Средство записи макроса просто игнорирует мои действия с этими элементами, так что получить код не могу. Подскажите, как управлять этими элементами при помощи VBA?
Заранее спасибо.
P.S. файл примера не хочет прикрепляться :( пишет, что формат не подходящий.
Название: Re: Управление элементами Active X с помощью VBA
Отправлено: Dr_Lex от 17.04.2015, 13:35
Сохранил пример в формате 2003 Excel`я
Название: Re: Управление элементами Active X с помощью VBA
Отправлено: cheshiki1 от 17.04.2015, 15:43
With Worksheets("Оформление груза")
.OLEObjects("CheckBox21").Object.Value = False
.OLEObjects("CheckBox22").Object.Value = False
.OLEObjects("ComboBox21").Object.ListIndex = 0
.OLEObjects("OptionButton21").Object.Value = True
.OLEObjects("OptionButton22").Object.Value = False
.OLEObjects("OptionButton23").Object.Value = False
.OLEObjects("OptionButton24").Object.Value = False
End With

в примере кнопки не рабочие, так что на примере не проверял.
Название: Re: Управление элементами Active X с помощью VBA
Отправлено: Dr_Lex от 17.04.2015, 15:58
Боже, как всё просто, когда знаешь. Огромное спасибо. Всё работает как надо. Странно что средство записи код не выдаёт, тем более он такой простой оказался.
Название: Re: Управление элементами Active X с помощью VBA
Отправлено: Dr_Lex от 19.04.2015, 04:22
Ещё одно уточнение...
Это не уточнение, это новый вопрос для другой темы [МОДЕРАТОР]