【VBA】Outlook 仕分けルールの初期設定がうまくいかない件

Outlook VBAはあまり情報がなく困ってしまいますが、受信時メッセージのルールで、差出人アドレスに指定した文字列を含まない場合の初期設定が全然うまくいきません。

こんな感じでアドレスを突っ込んでも、差出人の条件がまったく表示されません。

    Dim olCondition As Outlook.RuleCondition
    Set olCondition = oRule.Exceptions.senderAddress
    
    olCondition.Address = Address

一旦手作業で条件を入れたあと置き換えるのは以下でできるんですけどねぇ

       oRule.Exceptions.senderAddress.Address = Address

なんなんですかね?Oulook APIのバグかなんかですかね?
知っている方いらっしゃたら教えてマンモス・・・

PS. 原因がわかりました。自分の頭のバグですw
どうやら、olRuleReceiveルールについては、追加の設定はここで.Enable=Trueという設定が必要っぽいです。MoveToFolderの.Enable=Falseにしたらフォルダ移動ルールが消えていたので、ピンときて以下のコードにしたら問題なく設定できましたよ・・いやぁ、丸二日かかりましたよ・・

Dim oMoveRuleAction As Outlook.MoveOrCopyRuleAction
Set oRule = colRules.Create(ExSafelistRoule, olRuleReceive)
Set oMoveRuleAction = oRule.Actions.MoveToFolder
With oMoveRuleAction
  .Enabled = True
   .folder = oMoveTarget
End With 
With oRule.Exceptions.senderAddress
   .Enabled = True
   .Address = Address
End With    
colRules.Save

コード全体は追ってということで。お疲れ俺w


この記事が気に入ったらサポートをしてみませんか?