Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Basic / VBA


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Basic/VBA

Выпуск № 287
от 24.05.2006, 09:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 164, Экспертов: 26
В номере:Вопросов: 1, Ответов: 2


Вопрос № 43542: Уважаемые эксперты!Как из MS Exel запустить HTML-файл, который находится на этом же компьютере?...

Вопрос № 43.542
Уважаемые эксперты!Как из MS Exel запустить HTML-файл, который находится на этом же компьютере?
Отправлен: 19.05.2006, 09:05
Вопрос задал: Kuran (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Genyaa
Здравствуйте, Kuran!

Смотря что подразумевать под словом "запустить"...

Открыть HTML-файл можно в Excel через обычный диалог Открыть (Меню-Файл-Открыть). HTM файлы отражаются в списке вместе с остальными файлами XLS по умолчанию. Если нужно, то можно указать явно в поле типа файлов Вэб-страницы и вэб-архивы.

Те же действия делает метод Open в VBA. Например так:

Workbooks.Open Filename:="c: emp emp.htm"

Другое дело, если нужно открыть HTML-файл в браузере (не в Excel), но из VBA Excel'а.

Я делал это следующим образом:

nie = Shell("C:Program FilesInternet ExplorerIEXPLORE.EXE c: emp emp.htm", vbNormalFocus)


---------
Всякое решение плодит новые проблемы.
Ответ отправил: Genyaa (статус: 5-ый класс)
Ответ отправлен: 19.05.2006, 09:39

Отвечает: Залетин Виталий Викторович (мь!тарь)
Здравствуйте, Kuran!
Вот эта функция открывает все зарегистрированные на системе типы файлов в их родных приложениях:

Private Declare Function ShellExecute Lib "shell32.dll" _
Alias "ShellExecuteA" _
(ByVal hwnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long

Const SW_SHOWNORMAL = 1

Вот, например, как можно открыть файл-веб страницу:
ShellExecute Me.hwnd, "OPEN", _
"c:1.html", _
vbNullString, vbNullString, SW_SHOWNORMAL

Можно еще воспользоваться встроенной функцией SHELL:

Call Shell("C:Program FilesInternet ExplorerIEXPLORE.EXE c:1.html", vbMaximizedFocus)

Но ябы предпочел воспользоваться функцией АПИ, поскольку рулит больше!
---------
Учиться никогда не поздно. Особенно программированию!
Ответ отправил: Залетин Виталий Викторович (мь!тарь) (статус: Студент)
Ответ отправлен: 20.05.2006, 14:25
Оценка за ответ: 5


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.32 от 03.05.2006
Яндекс Rambler's Top100

В избранное