2

カレンダーの予定オブジェクトで appt_Write イベントをキャプチャしようとしています。以下のコードは、ユーザーが予定を選択してワンクリックでドラッグする場合を除いて、すべてのケースでうまく機能します。

任意のカレンダーの任意の予定に対して appt_Write イベントをキャプチャできるように、appt オブジェクトを設定するより良い方法はありますか?

Private WithEvents objExplorer As Outlook.Explorer
Private WithEvents appt As Outlook.AppointmentItem

Public Sub Application_Startup()
Set objExplorer = Application.ActiveExplorer
End Sub

Private Sub objExplorer_SelectionChange()
 If objExplorer.CurrentFolder.DefaultItemType = olAppointmentItem Then
    If objExplorer.Selection.Count > 0 Then
      Set appt = objExplorer.Selection(1)
    End If
  End If
End Sub


Private Sub appt_Write(Cancel As Boolean)
'Do something with Appt Object here.  When a user clicks and drags,
'this write event has already fired by the time the Appt object is set.
End If
End Sub
4

1 に答える 1

0

フォルダーで Items.ItemChange イベントを使用することはできますが、アイテムが変更された後にのみ発生します。

于 2013-01-29T23:01:21.197 に答える