Открыть страницу HTML в браузере по умолчанию с VBA?

Как я открываю страницу HTML в браузере по умолчанию с VBA? Я знаю, что это - что-то как:

Shell "http://myHtmlPage.com"

Но я думаю, что должен сослаться на программу, которая откроет страницу.

31
задан ashleedawg 2 April 2018 в 18:15
поделиться

2 ответа

Для этого можно использовать функцию Windows API ShellExecute:

Option Explicit

Private Declare Function ShellExecute _
  Lib "shell32.dll" Alias "ShellExecuteA" ( _
  ByVal hWnd As Long, _
  ByVal Operation As String, _
  ByVal Filename As String, _
  Optional ByVal Parameters As String, _
  Optional ByVal Directory As String, _
  Optional ByVal WindowStyle As Long = vbMinimizedFocus _
  ) As Long

Public Sub OpenUrl()

    Dim lSuccess As Long
    lSuccess = ShellExecute(0, "Open", "www.google.com")

End Sub

Небольшое замечание по поводу безопасности: Если URL приходит из пользовательского ввода, убедитесь, что этот ввод строго проверен, поскольку ShellExecute выполнит любую команду с правами пользователя, также format c: будет выполнен, если пользователь является администратором.

39
ответ дан 27 November 2019 в 21:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: