Вопрос № 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: