Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.06.2009, 00:35   #1
ru3000
Форумчанин
 
Регистрация: 19.06.2009
Сообщений: 163
По умолчанию Программный вызов другого приложения из Excel

Необходимо программно вызывать макросом другое приложение с условием, что путь к файлу относительный, и лежит он в той же папке. Например запустить test.bat с параметром "скрытый".
ru3000 вне форума Ответить с цитированием
Старый 25.06.2009, 05:26   #2
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Например, так:
Код:
RetVal = Shell(ThisWorkbook.Path & "\" & "test.bat", vbHide)
При успешном запуске программы, переменной RetVal будет присвоено значение типа Variant (Double), представляющее идентификатор программы (ID). Идентификатор задачи ID является уникальным номером, указывающим на выполняемую программу. Если функция Shell не может запустить указанную программу, возникает ошибка.
Чем шире угол зрения, тем он тупее.

Последний раз редактировалось SAS888; 25.06.2009 в 08:30.
SAS888 вне форума Ответить с цитированием
Старый 25.06.2009, 10:57   #3
ru3000
Форумчанин
 
Регистрация: 19.06.2009
Сообщений: 163
По умолчанию

Что-то у меня ошибку выдает. Может я не правильно написал?:
Код:
Sub Macros()
RetVal = Shell(ThisWorkbook.Path & "\" & "Test.bat", vbHide)
End Sub
ru3000 вне форума Ответить с цитированием
Старый 25.06.2009, 11:41   #4
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

А файл "Test.bat" точно находится в той же папке, что и та книга в которой находится этот макрос?
Может быть Вы не сохранили книгу с макросом в папку с файлом "Test.bat"?
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 25.06.2009, 12:16   #5
ru3000
Форумчанин
 
Регистрация: 19.06.2009
Сообщений: 163
По умолчанию

Да, точно в той же папке. Все-равно ошибка. У меня виста, а excel 2007. Может с этим связано?

Извиняюсь. Все работает на ура. Спасибо.

Последний раз редактировалось ru3000; 25.06.2009 в 15:23.
ru3000 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Простой пример вызов DLL из макроса Excel Averinsergey Общие вопросы Delphi 2 05.05.2009 23:12
Вызов одного приложения из другого zalum Общие вопросы Delphi 8 24.04.2009 10:05
Получать\отправлять пакеты через соединение другого приложения Frozzeg Работа с сетью в Delphi 8 20.03.2009 17:11
Как работать с меню другого приложения ? Stimer Win Api 1 17.12.2008 16:30