回答:
この単純なフィルターを実現するために必要なこれらすべての部品の高低を確認しました。Unix procmailフィルターは、比較すると非常に使いやすいです。すべてのMicrosoft Outlookウィザードは、ワイルドカードを使用した単純なフィルターの邪魔になります。Microsoftがデフォルトで提供する多くの電子メールフィルター条件は有用ですが、実行中のコードの柔軟性とカスタマイズに勝るものはありません。
Alt-F11は、VBAコードエディターを表示します。ThisOutlookSessionをダブルクリックします。コードを書きます。私の場合、サブジェクト行で正規表現を使用し、DefaultFolderではなくサブフォルダー内の自分のpstに移動しています。
Sub filter(Item As Outlook.MailItem)
Dim ns As Outlook.NameSpace
Dim MailDest As Outlook.Folder
Set ns = Application.GetNamespace("MAPI")
Set Reg1 = CreateObject("VBScript.RegExp")
Reg1.Global = True
Reg1.Pattern = "(.*Abc.20.*)"
If Reg1.Test(Item.Subject) Then
Set MailDest = ns.Folders("Personal Folders").Folders("one").Folders("a")
Item.Move MailDest
End If
End Sub
ルールの下で、「ルールとアラートの管理...」を選択します。新しいルールは次のようになります
Apply this rule after the message arrives run Project1.ThisOutlookSession.filter
これを取得するには、ステップ1:条件の選択:[次へ]をクリックします。[OK]をクリックして、すべてのメッセージに適用されることを確認します。[アクションの選択]で[スクリプトの実行]をオンにし、クリックしてフィルタースクリプトを選択し、[次へ]または[完了]を選択します。[例外を選択]で、[次へ]または[完了]をクリックします。vba-filterなどの適切な名前を付けて、[このルールを有効にする]をオンにします。完了をクリックします。ローカルフォルダーに対応しているため、このルールがオンラインまたは別のデバイスからチェックするメールに対して機能しないことを確認するよう求められたら、[OK]をクリックします。[ルールと警告]ダイアログボックスで[OK]をクリックします。