OutlookVBA:新しい(救済されていない)アイテムをフォルダーに移動する

StackOverflow https://stackoverflow.com/questions/4355961

  •  08-10-2019
  •  | 
  •  

質問

ユーザーが保存したときに、新しいOutlookアイテムを特定のストアで作成しようとしています。通常、複数のアカウントがある場合、新しいアイテム(タスクの場合はCtrl+Shift+Kを押すなど)を作成すると、アクティブアカウントのデフォルトフォルダーに新しいアイテムが作成されます。

私は新しいアイテムのために検査官を傍受して移動しようとしましたが、それは効果がありませんでした。コードの要点は次のとおりです(新しいアイテムを避けるためにチェックされていることは省略されていません):

Dim WithEvents inspectors As Outlook.inspectors

Private Sub Application_Startup()
    Set inspectors = Application.inspectors
End Sub

Private Sub inspectors_NewInspector(ByVal Inspector As Inspector)
    Dim item As Object
    Set item = Inspector.CurrentItem
    If item Is Nothing Then Exit Sub
    If item.Class <> olTask Then Exit Sub
    item.Move Application.GetNamespace("MAPI").GetDefaultFolder(olFolderTasks)
End Sub

残念ながら、移動方法には効果がありません。何か案は?

役に立ちましたか?

解決

救われていないアイテムを移動することはできません。アイテムをどのように作成していますか?

使用 Items.Add 特定のフォルダーにアイテムを追加する方法(つまり、作成する)。 CreateITEMメソッドを使用している場合、そのアイテムタイプのデフォルトフォルダーに常に作成されます。

既存の機能を使用してタスクを作成しようとする代わりに(不可能または簡単であるかどうかはわかりません)、必要なフォルダーにタスクを作成するマクロを作成してから、マクロを追加してください。ツールバーボタン。または、最初にアイテムを保存してから、移動することもできます。現在のコードがアイテムをデフォルトのタスクフォルダーに移動することに注意してください。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top