Désactiver les règles d'Outlook depuis Excel

Bonjour,

Est-il possible de désactiver les règles Outlook depuis Excel en VBA ? J'essaye de récupérer le dernier mail envoyé dans une boite mail (ce que j'arrive à faire) mais cette macro doit pouvoir s'appliquer à plusieurs boites et donc pouvoir prendre désactiver les règles changeant de dossier les mails envoyés. (mon but étant juste de sauvegarder dans un répertoire un mail (en version .send et pas .display) que j'envoie par excel.

(J'ai déja créé une discussion à ce sujet d'ailleurs, si quelqu'un à une solution -> https://forum.excel-pratique.com/viewtopic.php?f=2&t=124640 )

Merci.

Finalement j'ai trouvé une solution que je partage car j'ai l'impression que internet les forums sont très peu fournis d'informations sur le sujet.

Public tableau(20)
Sub DesactivateRule()
    Dim oFromCondition As Object
    Set OutApp = CreateObject("Outlook.Application")
    Dim st As Outlook.Store
    Dim myRules As Outlook.Rules
    Dim rl As Outlook.Rule
    Dim i As Integer
    ' récupération l'emplacement de stockage des règles
    Set st = OutApp.Session.DefaultStore
    ' récupération de toutes les règles disponibles
    Set myRules = st.GetRules
    ' Parcours de chaque règle
    i = 0
    For Each rl In myRules
        If rl.Enabled = True Then
            rl.Enabled = False
        Else
            tableau(i) = rl.Name
            i = i + 1
        End If
    Next
    myRules.Save

End Sub

Sub ActivateRule()
    Dim oFromCondition As Object
    Set OutApp = CreateObject("Outlook.Application")
    Dim st As Outlook.Store
    Dim myRules As Outlook.Rules
    Dim rl As Outlook.Rule

    ' récupération l'emplacement de stockage des règles
    Set st = OutApp.Session.DefaultStore
    ' récupération de toutes les règles disponibles
    Set myRules = st.GetRules

    ' Parcours de chaque règle
    For Each rl In myRules
        If Not present(tableau, rl.Name) Then rl.Enabled = True
    Next
    myRules.Save
End Sub

Function present(tableau, nom)
    For i = 0 To UBound(tableau)
        If tableau(i) = nom Then present = True
    Next
End Function

Une fonction désactive les règles et l'autre les actives en prenant soin de ne pas activer ceux étant déjà désactiver à l'origine

Rechercher des sujets similaires à "desactiver regles outlook"