2014-02-27 3 views
0

Excel의 LN에서 보고서를 추출하고 내 관리자에게 메일을 보낸 VBA 매크로가 있습니다. .vbs 스크립트를 사용하여이 MACRO를 실행하기 위해 스케줄러를 사용했습니다. 이 스케줄러는 월요일부터 금요일까지 실행됩니다. 여기에 문제는 우리가 가끔 & 토요일에 우리 시스템과 함께가는 서비스를 가지고 있고, 그 아웃룩 세션이 끝나기를 기다린다는 것입니다.Outlook 세션이 VBA를 사용하여 열려 있는지 확인하는 방법

내가 원했던 것은 처음에 Out Look 세션이 열려 있는지 여부를 확인한 다음 VBA 매크로를 작성하고자하는 경우입니다. 열려 있으면 열려 있는지 확인한 다음 Outlook 세션을 열고 메일을 보내야합니다.

전문 지식 : 실행중인 Outlook 세션에 대한 참조를 얻을 수 GetObject(,"Outlook.Application")를 사용하는

+0

주를 시작하는 CreateObject()을 사용할 수 있습니다 Task Scheduler (또는 로그온 한 사용자와 다른 시스템 ID를 사용하는 다른 프로세스 시작 프로그램)를 통한 모델은 지원되지 않습니다. 예기치 않은 결과가 발생할 수 있습니다. –

답변

4

봅니다 필요 - 실패 할 경우 다음 Outlook 개체를 자동화 것으로 전망

Dim olApp As Outlook.Application 

On Error Resume Next 
Set olApp = GetObject(, "Outlook.Application") 
On Error Goto 0 

If olApp Is Nothing Then 
    Set olApp = CreateObject("Outlook.Application") 
End If 

If olApp Is Nothing Then 
    Err.Raise 999, , "Failed to get Outlook reference" 
End If 
관련 문제