Outlookの検索では添付ファイルの中身もヒットするので、もしかしたらと思ったのですが、ダメみたいですね。
【AIによる回答】
outlook 仕分け ルール 添付ファイル内 キーワードOutlookの標準機能にある「仕分けルール」では、添付ファイルの内容に含まれるキーワードを条件に指定することはできません。ただし、代替策として、添付ファイルのファイル名を条件にしたり、VBA(Visual Basic for Applications)を使用して仕分け処理を自動化したりする方法があります。
標準機能で設定できる仕分けルール添付ファイルの中身ではなく、以下の情報を条件に設定できます。
- 添付ファイルの有無: 添付ファイルが付いているメールをすべて仕分けることができます。
- 件名に含まれる特定の文字: 件名に特定のキーワードが含まれるメールを仕分けます。
- 本文に含まれる特定の文字: メール本文に含まれる特定のキーワードで仕分けます。
添付ファイルのファイル名を条件に仕分ける方法添付ファイルのファイル名に特定のキーワードが含まれる場合に、メールを自動で振り分けるVBAマクロを使用する方法があります。VBAマクロの使用例
- OutlookのVBAを起動する: Alt + F11キーを押して、Visual Basic Editorを開きます。
- マクロの記述:
ThisOutlookSessionに以下のコードを貼り付けます
Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
Dim olApp As Outlook.Application
Dim olNs As Outlook.Namespace
Dim olMail As Outlook.MailItem
Dim olAttachment As Outlook.Attachment
Dim folderName As String
Dim keyword As String
Set olApp = Outlook.Application
Set olNs = olApp.GetNamespace("MAPI")
' 仕分け先のフォルダ名を指定する
folderName = "指定フォルダ"
' 添付ファイル名に含むキーワードを指定する
keyword = "キーワード"
' 受信メールアイテムの取得
Set olMail = olNs.GetItemFromID(EntryIDCollection)
' 添付ファイルの有無を確認
If olMail.Attachments.Count > 0 Then
For Each olAttachment In olMail.Attachments
' 添付ファイル名にキーワードが含まれているかチェック
If InStr(1, olAttachment.FileName, keyword, vbTextCompare) > 0 Then
' メールを指定フォルダに移動
olMail.Move olNs.GetDefaultFolder(olFolderInbox).Folders(folderName)
Exit For
End If
Next olAttachment
End If
Set olApp = Nothing
Set olNs = Nothing
Set olMail = Nothing
Set olAttachment = Nothing
End Sub
3.マクロの実行: このマクロは、新規メールを受信するたびに自動で実行されます。
VBAマクロを使用する際の注意点
- セキュリティ設定: マクロを実行するには、Outlookのセキュリティ設定を変更する必要がある場合があります。
- 添付ファイル形式: マクロが対応できる添付ファイル形式には限りがあるため、すべてのファイル形式で内容を読み取れるわけではありません。
- VBAの知識: マクロの記述や編集には、ある程度のVBAの知識が必要です。
添付ファイル内のキーワードでの仕分けが必須で、VBAでの自動化が難しい場合は、手動で仕分けを行うか、外部のツールを利用することも検討してください。
