Форум по VBA, Excel и Word

VBA, Excel => VBA, макросы в Excel => Тема начата: Бант от 13 мая 2014, 10:52

Название: Excel VBA Макросы. Программирование "RefEdit" на форме.
Отправлено: Бант от 13 мая 2014, 10:52
Как в VBA запрограммировать кнопки на форме, которые выбирают диапазон?
Название: Re: Excel VBA Макросы. Программирование "RefEdit" на форме.
Отправлено: Администратор от 13 мая 2014, 11:43
Я недавно хотел использовать в макросе такие кнопки, но столкнулся с проблемами.
Этот элемент управления называется "RefEdit".

"RefEdit" работает только с одним Excel-файлом - если будет открыто два Excel-файла, и вы захотите перемещаться по этим файлам и выбирать ячейки, то не получится.
Даже если нужно будет работать с одним файлом, то вряд ли можно использовать "RefEdit" - вдруг пользователь случайно перейдёт на другой файл. Если нужно будет использовать "RefEdit", нужно сделать так, чтобы пользователь не мог перейти на другой файл. Не знаю, как это сделать. Вероятно, нужно использовать API-функции, чтобы отслеживать перемещение курсора мыши, но на другой файл можно переключиться ещё и клавишами. Поэтому очень сложная и редкая задача.

Я использую вместо "RefEdit" немодальную форму, текстовое поле и кнопку (см. вложенный файл). Работает так:
Может быть я что-то не так делал с "RefEdit", но пока решил не пользоваться им.