ShellExecute - это функция в Windows DLL.
Вам нужно добавить объявление для этого в модуле VBA:
Public 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
Разница между вашим решением Shell и ShellExecute заключается в том, что ShellExecute будет использовать системный обработчик по умолчанию для URL-адресов, чтобы открыть ссылку. Это не должно быть IE. Ваше решение всегда откроет его в IE. Ваш эквивалент эквивалентен iexplore.exe в окне запуска в Windows. ShellExecute является эквивалентом простого размещения URL-адреса в окне выполнения в Windows.