1

助けが必要です。VB と SendItem を使用して Outlook でタスクを作成することができました。私の問題は、使用しているコードが、必要なタスクだけでなく、2 つのタスクを作成していることです。

.Saveこれが原因だと思ったので削除しようとしましたが、それでも2つのタスクが追加されます。コードにブレークポイントを追加して、何らかの理由で 2 回循環せず、1 回だけ実行されるようにしました。

誰かが私に明白なことを言ってくれてありがとう

コードスニペット:

`If bNotFount = False Then
        Set Ns = Application.GetNamespace("MAPI")
        Set ItemT = GetCurrentItem()
        Set taskFolder = Ns.GetDefaultFolder(olFolderTasks)
        Set olTask = Ns.GetDefaultFolder(olFolderTasks).Items.Add(olTaskItem)
        With olTask
            .Subject = ItemT.Subject
            .Attachments.Add ItemT
            .Body = ItemT.Body
            .DueDate = Now + 1
            .Move taskFolder
            .Save
            .Display 'show the task to add notes
        End With
    End If'
4

1 に答える 1

0

とにかくそこに保存するので、デフォルトのタスクフォルダーに移動する必要はありません。行を削除するだけ.Move taskFolderです。

私はあなたのコードを更新しました:

  Private Sub Application_ItemSend(Item As Object, ByRef Cancel As Boolean) Handles Application.ItemSend

    Dim ns As Outlook.NameSpace
    Dim taskFldr As Outlook.Folder
    Dim olTask As Outlook.TaskItem
    '    If bNotFount = False Then
      Ns = Application.GetNamespace("MAPI")

      taskFldr = ns.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderTasks)
    olTask = taskFldr.Items.Add
      With olTask
      .Subject = Item.Subject
      .Attachments.Add(Item)
      .Body = Item.Body
      .DueDate = Now + 1
      .Save()
      .Display() 'show the task to add notes
      End With
    ' End If
  End Sub
于 2013-05-17T16:24:47.010 に答える