Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: как закрыть внешнее приложение из экселя Добавлено: 19.11.09 15:46  

Автор вопроса:  yuri_K
подскажите, пожалуйста, нужно сделать так, чтобы макрос закрывал внешнее приложение (эксплорер, калькулятор, аську, что-угодно) по имени файла, которым оно было запущено. Имя файла мы знаем, путь тоже.
Заранее благодарен за помощь!

Ответить

  Ответы Всего ответов: 7  

Номер ответа: 1
Автор ответа:
 AngryBadger



Вопросов: 33
Ответов: 245
 Профиль | | #1 Добавлено: 19.11.09 17:22
Не совсем то, что ты хочешь, но довольно удобно.

http://www.vbnet.ru/faq/showtopic.asp?id=173

Ответить

Номер ответа: 2
Автор ответа:
 AngryBadger



Вопросов: 33
Ответов: 245
 Профиль | | #2 Добавлено: 19.11.09 17:27
А еще вкупе с этим, по первой ссылке находишь хэндл, а здесь полученаешь полный путь exe-файла из его хэндла, потом проверяешь с тем путем что у тебя есть и закрываешь.

http://www.vbnet.ru/faq/showtopic.asp?id=173

Ответить

Номер ответа: 3
Автор ответа:
 yuri_K



Вопросов: 3
Ответов: 4
 Профиль | | #3 Добавлено: 19.11.09 17:34
вторая ссылка идентична первой...
и еще не понятно в каком месте указывается критерий сравнения (нужное название окна) ?

Ответить

Номер ответа: 4
Автор ответа:
 yuri_K



Вопросов: 3
Ответов: 4
 Профиль | | #4 Добавлено: 19.11.09 17:36
что-то похожее есть тут http://visualprogs.medyal.ru/sample/126.html
но мне не понятно где критерий сравнения указывается...

Ответить

Номер ответа: 5
Автор ответа:
 AngryBadger



Вопросов: 33
Ответов: 245
 Профиль | | #5 Добавлено: 19.11.09 17:43
Вот вторая ссылка, при поиске hwnd, можешь указывать часть заголовка, например "Текстовы"

http://www.vbnet.ru/faq/showtopic.asp?id=144

Ответить

Номер ответа: 6
Автор ответа:
 yuri_K



Вопросов: 3
Ответов: 4
 Профиль | | #6 Добавлено: 19.11.09 18:16
спасибо, буду пробовать

Ответить

Номер ответа: 7
Автор ответа:
 hip



Вопросов: 3
Ответов: 22
 Профиль | | #7 Добавлено: 19.11.09 18:21
Раз уж пошла такая пьянка, тоже хочется задать вопрос в тему.
Речь идет о конкретном приложении - Excel. Положим на сетевом диске лежит книга, которую открыл другой пользователь с другого компьютера своей инстансой Excel. Есть ли какой-то способ, зная путь к книге, заставить ТО приложение выполнить какой-нибудь макрос?
То есть понятно, что можно так:
  1. Application.Run("ИмяФайла.xls!MyMacro", MyStr)

как в примере в соседней теме. Но как получить это "другое" Application?
Очевидно, что окно будет зарегистрировано в другой системе, то есть поиском по заголовку здесь ничего сделать не удастся.
Возможно объектная модель Office предоставляет некий интерфейс?
Спасибо заранее.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам