|
|
|
Как дать команду Excel и "заниматься своими делами".
|
|||
|---|---|---|---|
|
#18+
Я хочу из своей программы дать некоторое задание существующему экземпляру Excel так, чтобы моя программа не дожидалась завершения этого задания и могла работать дальше. Пример. если я сделаю так в лоб: mvExcel.Run("Test") ... другая последовательность операторов То "другая последовательность операторов" не выполняется, пока не отработает Test(), а мне нужно так - дал задание Excel-ю и работаешь дальше, а о том, что Excel завершил работы я могу и через какое-нибудь событие узнать. Вот не могу сообразить, как это реализовать :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2006, 10:51:18 |
|
||
|
Как дать команду Excel и "заниматься своими делами".
|
|||
|---|---|---|---|
|
#18+
А в чем ты работаешь и даешь команды Excel-ю ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2006, 11:20:05 |
|
||
|
Как дать команду Excel и "заниматься своими делами".
|
|||
|---|---|---|---|
|
#18+
Работают в программке на VB6. В книге Excel есть скрипты, формирующие отчеты по SQL-базе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2006, 11:28:55 |
|
||
|
Как дать команду Excel и "заниматься своими делами".
|
|||
|---|---|---|---|
|
#18+
Поищи в Инете примеры на VB. Ключевое слово многопоточность. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2006, 11:48:54 |
|
||
|
Как дать команду Excel и "заниматься своими делами".
|
|||
|---|---|---|---|
|
#18+
Расскажу более подробно: в проге на VB у меня есть объект Job (задание для Excel). В начале работы я создаю в VB коллекцию JobCollection и передаю её в Excel таким образом: Application.Run("JobCollection",JobCollection) - при этом моя функция в Excel JobCollection просто запоминает ссылку на эту коллекцию в своей переменной. Далее, я создаю в VB новый объект Job и как-то инициализирую его: Job.State=0 Job.strCommand="какие-то запросы, инструкции и т.п." Потом я добавляю это новое задание в коллекцию заданий для Excel: JobCollection.Add Job а вот дальше я хочу, чтобы Excel просматривал эту коллекцию (она же ему доступна), находил объекты Job у которых State=0 (не обработанные еще) и выполнял соответствующую инструкцию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2006, 11:51:25 |
|
||
|
Как дать команду Excel и "заниматься своими делами".
|
|||
|---|---|---|---|
|
#18+
Так, начал объяснять и у самого в голове некоторое прояснение появилось :)) Получается, что мне нужно просто организовать обработку ожидания в Excel, причем не тупо Sleep или Wait , когда все висит, а как-то по другому... Или: послать "сигнал" Excel - посмотри, дружок, есть ли у тебя в очереди задания. Но при этом само приложение VB не должно дожидаться от Excel выполнения результатов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2006, 11:56:38 |
|
||
|
Как дать команду Excel и "заниматься своими делами".
|
|||
|---|---|---|---|
|
#18+
может это поможет: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2006, 09:32:02 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=33712614&tid=2184890]: |
0ms |
get settings: |
6ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
192ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
28ms |
get tp. blocked users: |
1ms |
| others: | 231ms |
| total: | 480ms |

| 0 / 0 |
