| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Программирование, связанное с MS Office > Как обратно передать фокус Excel |
| Автор: AlexanderNO 11.12.2007, 23:25 |
| Программно из Excel запускаю командой Shell приложение (DDE), которое будет работать совместно с Excel. Приложение после запуска отбирает фокус. Как вернуть фокус Excel? |
| Автор: Naghual 11.12.2007, 23:55 |
| Shell(PathName, vbNormalNoFocus) или Shell(PathName, vbMinimizedNoFocus) |
| Автор: AlexanderNO 12.12.2007, 00:04 |
| Спасибо, завтра попробую. Если что не так - доложу. |
| Автор: AlexanderNO 12.12.2007, 20:26 |
| Уважаемый Naghual. К сожалению такое управление по Shell не срабатывает: после его выполнения программа DDE все равно перехваитывает фокус и не возвращает. Тут нужно что - то другое. В силу определенных причин я вынужден делать временную задержку, иначе идет сбой. в результате программа выглядит так: Dim retval As Double retval = Shell(cdmdir & "\Cdmdde.exe", vbMinimizedNoFocus) Application.Wait (Now + TimeValue("0:00:01")) Есть ли возможность передать фокус после Wait. |
| Автор: kapbepucm 12.12.2007, 21:52 | ||
Может это?
|
| Автор: AlexanderNO 17.12.2007, 22:57 |
| kapbepucm большое СПАСИБО! Все прекрасно сработало. |