2016-05-19 28 views
0

Outlookの仕事の週のビュー(ではなく、「新しい予定」ボタンを使用して)内に新しい予定表エントリを直接作成しているときに、イベントをキャプチャしようとしています。働いて何Outlookの予定表でイベントをキャプチャする

がイベントをキャプチャすることです。このコードで「新しい予定」ボタンから発射:

Dim WithEvents colInsp As Outlook.Inspectors 
Dim WithEvents oAppt As Outlook.AppointmentItem 

Private Sub Application_Startup() 
    Set colInsp = Application.Inspectors 
End Sub 

Private Sub colInsp_NewInspector(ByVal Inspector As Inspector) 
    If Inspector.CurrentItem.Class = olAppointment Then 
     Set oAppt = Inspector.CurrentItem 
    End If 
End Sub 

Private Sub oAppt_Write(cancel As Boolean) 
' Do something 
End Sub 

週ビューでイベントを直接作成するときnewInspectorサブは呼び出されません。

これには正しい方法はありますか?

ありがとうございました。

答えて

0

Namespace.GetDefaultFolder(olFolderCalendar)から返された予定表フォルダのItems.ItemAddイベントを使用します。

0

Dimitry、ありがとう。

Private WithEvents colItems As Outlook.Items 

Private Sub Application_Startup() 
    Dim oFolder As Outlook.MAPIFolder 
    Dim oNS As Outlook.NameSpace 

    Set oNS = Application.GetNamespace("MAPI") 
    Set oFolder = oNS.GetDefaultFolder(olFolderCalendar) 
    Set colItems = oFolder.Items 

    Set oNS = Nothing 
    Set oFolder = Nothing 
End Sub 

Sub colItems_ItemAdd(ByVal Item As Object) 
    ' Do what's needed 
End Sub 

出典:http://microsoft.public.office.developer.outlook.vba.narkive.com/6zlusiPe/new-calendar-item-is-created

これで、私は次を発見しました
関連する問題