0

メールがどのメールアドレスに送信されたかを調べる方法を見つけようとしています。次の点を考慮してください。

Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
    Dim mai As MailItem
    Dim intInitial As Integer
    Dim intFinal As Integer
    Dim strEntryId As String
    Dim intLength As Integer
    
    intInitial = 1
    intLength = Len(EntryIDCollection)
    intFinal = InStr(intInitial, EntryIDCollection, ",")
    Do While intFinal <> 0
        strEntryId = Strings.Mid(EntryIDCollection, intInitial, (intFinal - intInitial))
        Set mai = Application.Session.GetItemFromID(strEntryId)
        intInitial = intFinal + 1
        intFinal = InStr(intInitial, EntryIDCollection, ",")
    Loop
    strEntryId = Strings.Mid(EntryIDCollection, intInitial, (intLength - intInitial) + 1)
    MsgBox strEntryId
    Set mai = Application.Session.GetItemFromID(strEntryId)
    For Each Recipient In mai.Recipients
        MsgBox Recipient
    Next
End sub

これらの msgBoxes では、「John Doe」のような「ナイスネーム」を取得しますが、メールアドレス「john.doe@gmail.com」を取得したいと考えています。

どうすればこれを達成できますか?

4

1 に答える 1

6

これはOutlook2007+だと思います。Addressプロパティを試しましたか?

For Each Recipient In mai.Recipients
  MsgBox Recipient.Address
Next Recipient

これにより、各受信者の電子メールアドレスが出力されます。

于 2012-05-24T00:16:58.340 に答える