受信トレイのルールがありません。メールを読んだら、それを別のフォルダーに移動して、受信トレイ内のすべてのアイテムが新規またはアクション可能になるようにします。実行可能な場合は、通常、アクションを実行し、メールをすばやくファイリングして、受信トレイをできるだけ空に保ちます。
これが私の基本マクロです。メッセージペインまたは現在開いているメッセージで選択したメッセージを「個人用フォルダーのアーカイブ」PSTファイルの「受信トレイ」フォルダーに移動します。異なる場合は、PSTファイル名とフォルダーを変更する必要があります。Outlookのメインツールバーと[メッセージウィンドウを読む]ツールバーにマクロボタンを作成します。マクロにも署名することをお勧めします。
Sub MoveSelectedMessagesToArchiveInbox()
On Error Resume Next
Dim objFolder As Outlook.MAPIFolder, objInbox As Outlook.MAPIFolder
Dim objNS As Outlook.NameSpace, objItem As Outlook.MailItem
Set objNS = Application.GetNamespace("MAPI")
Set objInbox = objNS.GetDefaultFolder(olFolderInbox)
Set objFolder = objNS.Folders("Archive Personal Folders").Folders("Inbox")
'Assume this is a mail folder
If objFolder Is Nothing Then
MsgBox "This folder doesn't exist!", vbOKOnly + vbExclamation, "INVALID FOLDER"
End If
Select Case TypeName(Outlook.Application.ActiveWindow)
Case "Explorer"
If Application.ActiveExplorer.Selection.Count = 0 Then
'Require that this procedure be called only when a message is selected
Exit Sub
End If
For Each objItem In Application.ActiveExplorer.Selection
If objFolder.DefaultItemType = olMailItem Then
If objItem.Class = olMail Then
objItem.Move objFolder
End If
End If
Next
Case "Inspector"
Set objItem = Outlook.Application.ActiveInspector.CurrentItem
If objFolder.DefaultItemType = olMailItem Then
If objItem.Class = olMail Then
objItem.Move objFolder
End If
End If
Case Else
' Do Nothing
End Select
Set objItem = Nothing
Set objFolder = Nothing
Set objInbox = Nothing
Set objNS = Nothing
End Sub