Страницы: 1
RSS
msoControlEdit не обрабатывает событие по Enter
 
Добрый день, уважаемые форумчане
обращаюсь к Вам с такой проблемой:
есть объект msoControlEdit на ленте, при вводе в него значения и нажатия Enter происходит выборка из базы по условию из msoControlEdit, создается временный лист и на него выводится результат. После выбора нужного значения лист автоматически удаляется. Проблема состоит в том, что если мне необходимо сделать выборку второй раз с тем же самым условием т.е. значение в msoControlEdit не меняется (выделяю текст в msoControlEdit и нажимаю Enter), то вызов макроса не происходит. Не происходит он даже в том случае, если удалить один символ и потом его написать снова. Вопрос как сделать так, чтобы макрос вызывался каждый раз, даже если значение не изменялось.

Заранее спасибо!
С уважением.
Изменено: YuryK - 27.04.2013 13:12:48
 
Никак. Обязательно необходимо провести изменения. Лично я бы советовал после того как сделали выгрузку - менять программно значение поля(очищать или убирать один символ; добавить пробел и т.п.).
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Предположение для проверки: передать фокус другому контролу и вернуть его обратно.
 
как вариант - рядом с полем нарисовать кнопку и запускать макрос по ней.
имхо, это более логично - макрос 100% запустится по команде. и не запустится, если вы отредактировали текст в поле, а потом передумали запускать макрос.
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
Спасибо за ответы. Реализовал предложение ikki.
To: Юрий М передача фокуса результата не дала. Видимо где-то хранится значение ДО начала редактирования и если оно совпадает с тем что есть на момент окончания редактирования (нажатие Enter), то макрос не вызывается.
Еще раз всем спасибо. Вопрос решен.
 
Тогда вариант в порядке бреда (чтобы не рисовать кнопку): передаём фокус кому-нибудь, запоминаем введённое значение, очищаем контрол и снова заполняем его из переменной.
Страницы: 1
Наверх