본문 바로가기

온갖 잡 정보들

[아웃룩] 특정 이벤트에 실행되는 스크립트

아웃룩 2010 기준으로 작성됨.

 

새 메일이 온다거나, 특정 폴더에 새 글이 들어오는 경우 스크립트 발동

(규칙에서는 설정 할 수 없는 매크로 작성이 가능하다)

 

다음 두 예제를 ThisOutlookSession에 넣고 저장 후 아웃룩 재시작하면 된다.

재시작해도 안되는 경우가 왕왕 있는데 몇 번 재시작해보니 되긴 되더라.

 

보다시피 2번이 좀 더 간단하다.

 

1.

Dim WithEvents colSentItems As Items
 
Private Sub Application_Startup()
   Dim NS As Outlook.NameSpace
   Set NS = Application.GetNamespace("MAPI")
   Set colSentItems = NS.GetDefaultFolder(olFolderInbox).Items
   Set NS = Nothing
End Sub
 
Private Sub colSentItems_ItemAdd(ByVal Item As Object)
  Item.Subject = Item.Subject + "_By Rule"
  Item.Save
  Set Item = Nothing
End Sub

 

 

2. 아웃룩에 원래 메일 계정과 그 계정의 메일을 백업받는 "아웃룩백업"이라는 두 개의 계정을 사용한다.

아래 스크립트는 백업 받는 "받았다 편지함" 폴더에 메일이 들어오게 되면 작동한다.

Dim WithEvents colUserItems As Items
 
Private Sub Application_Startup()
   Set colUserItems = Session.Folders.Item("아웃룩백업").Folders.Item("받았다 편지함").Items
End Sub
 
Private Sub colUserItems_ItemAdd(ByVal Item As Object)
  Item.Subject = Item.Subject + "_By Rule"
  Item.Save
  Set Item = Nothing
End Sub