件名が文字列と一致する場合、Outlook VBAを使用して受信トレイをループし、送信者の電子メールアドレスを一覧表示しようとしています。これまでグーグルとは言えませんが、うまくいきません。
Dim objNS As Outlook.NameSpace
Set objNS = GetNamespace("MAPI")
Set Items = objNS.GetDefaultFolder(olFolderInbox).Items
Dim oFolder As Outlook.MAPIFolder
Dim oMail As Outlook.MailItem
For Each oMail In Items
Debug.Print oMail.SenderEmailAddress
Next
これを実行するとタイプミスマッチエラーが発生する理由を誰かが知っていますか?
コメントされているように、コードにMailItemのテストを組み込んでみてください。
Dim objNS As Outlook.NameSpace: Set objNS = GetNamespace("MAPI")
Dim olFolder As Outlook.MAPIFolder
Set olFolder = objNS.GetDefaultFolder(olFolderInbox)
Dim Item As Object
For Each Item In olFolder.Items
If TypeOf Item Is Outlook.MailItem Then
Dim oMail As Outlook.MailItem: Set oMail = Item
Debug.Print oMail.SenderEmailAddress
End If
Next
Edit1: Dmitryによって提案されているように、次のものも使用できます。
If Item.Class = 43 Then
代わりに
If TypeOf Item Is Outlook.MailItem Then