이메일이 도착하면 URL을 시작하는 방법
-
03-07-2019 - |
문제
이메일이 Outlook에 도착하면 URL을 시작하고 싶습니다. 규칙을 설정하고 스크립트 함수를 트리거하도록합니다. 브라우저에서 URL을 시작하기 위해 ShellexEcute에 전화를 걸고 싶은 것 같습니다.
ShellExecute(0&, "open", URL, vbNullString, vbNullString, _
vbNormalFocus)
메소드는 정의되지 않았습니다. 어떤 아이디어?
해결책
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 Solution과 ShellexeCute의 차이점은 ShellexeCute가 URL의 기본 시스템 처리기를 사용하여 링크를 엽니다는 것입니다. 이것은 IE 일 필요가 없습니다. 솔루션은 항상 IE에서 열립니다. 귀하는 IExplore.exe를 Windows의 런 박스에 넣는 것과 같습니다. ShellexeCute는 URL을 Windows에 런 박스에 넣는 것과 같습니다.
다른 팁
당신은 또한 사용할 수 있습니다 후속 링크 기본 브라우저에서 VBA에서 열린 URL로 또한 등록 된 신청서와 함께 문서를 열고 이메일을 보내고 폴더를 탐색하는 데 사용될 수 있습니다.
또는 사용하십시오 Shell
, 이와 같이:
Sub LaunchURL(Item As Outlook.MailItem)
Shell ("C:\Program Files\Internet Explorer\IEXPLORE.EXE" & " " & Item.Body)
End Sub
이것을 작성하는 배치 파일을 만들 수 있습니다.
start http://someurl.com/?a=1^&b=2
이 배치 파일을 시작하도록 Outlook Rule을 구성합니다. 주목 ^ 전기 서명 &. 이것은 배치 파일의 탈출 순서입니다. 또한 Windows OS에 기본 브라우저가 설정되어 있어야합니다.
Shell ("CMD /C start http://www.spamcop.net"), vbNormalFocus
제휴하지 않습니다 StackOverflow