Recherche dans le dossier Elements envoyés de Outlook

Bonjour à tous,

Je suis débutant avec VBA et Excel et je suis un peu perdu, mais je pense que ma demande n'est pas vraiment compliqué à réaliser...

Je recherche donc un script VBA me permettant de rechercher dans le dossier "Éléments envoyés" de Outlook si des emails ayant pour Objet "Relance" ont été envoyé à la date du jour.

Si tel est le cas je voudrais simplement qu'une msgbox s'affiche en m'indiquant "Les emails du jour en deja été envoyées"

D'avance merci pour votre aide.

Bonne journée

C'est du VBA dans Outlook ... résultat que tu peux exporter en excel ensuite ! Ce n'est pas courant et il y a peu de spécialistes.

Bonsoir,

proposition de code

Sub Mail_envoyés()

    'définition variables
    Dim olApp As New Outlook.Application     'création objet application Outlook
    Dim éléments_envoyés As Outlook.MAPIFolder

    'assignation éléments envoyés du compte de messagerie par défaut
    Set éléments_envoyés = olApp.GetNamespace("MAPI").GetDefaultFolder(olFolderSentMail)

    'balayage messages envoyés
    For Each Message In éléments_envoyés.Items
        If Message.Subject Like "*Relance*" _
        And (Message.SentOn < Date + 1 And Message.SentOn > Date - 1) Then
            MsgBox "Les emails du jour ont deja été envoyés"
        End If
    Next Message

    'libération objet instance application outlook
    Set olApp = Nothing

End Sub

Merci beaucoup pour cette réponse rapide,

J'ai insérer ton code je n'ai pas d'erreur mais je n'ai pas la msgbox qui apparait ...

J'ai bien penser à activer Outlook dans les options mais rien n'y fait ...

Une idée ?

Bonsoir,

Tu as bien ajouté dans l'éditeur VBA la référence "Microsoft Outlook Object Library" ?

Dans l'objet de tes messages, as-tu "Relance" ou "relance"? Seule la chaîne "Relance" est testée.

Dans Outlook, as-tu configuré plusieurs comptes de messagerie ?

thev a écrit :

Bonsoir,

Tu as bien ajouté dans l'éditeur VBA la référence "Microsoft Outlook Object Library" ?

Dans l'objet de tes messages, as-tu "Relance" ou "relance"? Seule la chaîne "Relance" est testée.

Dans Outlook, as-tu configuré plusieurs comptes de messagerie ?

Bonjour,

Oui j'ai bien ajouté dans l'éditeur VBA la référence "Microsoft Outlook Object Library".

En faite je viens tout juste de trouver d'où venait le problème, j'avais mal renseigné le "sujet" de la recherche des emails.

C'est parfait tout fonctionne pour moi

J’aurais une dernière question, j'utilise en effet plusieurs comptes de messagerie, comment pointé ma recherche sur un compte spécifique ?

Un grand merci pour ton aide en tout cas !!!!

Bonne journée

Bonjour,

Tout d'abord une rectification dans les conditions d'apparition du message ( > Date et non > Date -1)

                If Message.Subject Like "*Relance*" _
                And (Message.SentOn < Date + 1 And Message.SentOn > Date) Then
                    MsgBox "Les emails du jour ont deja été envoyés"
                End If

Ensuite, ci-dessous code pour 2 comptes de messagerie ou plus

Sub Mail_envoyés()

    'définition variables
    Dim olApp As New Outlook.Application     'création instance application Outlook
    Dim éléments_envoyés As Outlook.MAPIFolder
    Dim Comptes_messagerie()
    Dim Dossier As Outlook.MAPIFolder

    'définition Comptes de messagerie
    Comptes_messagerie = Array("adresse1", "adresse2")
    'balayage Dossiers Outlook
    For Each Dossier In olApp.GetNamespace("MAPI").Folders
        If UBound(Filter(Comptes_messagerie, Dossier.Name)) > -1 Then
            'assignation éléments envoyés du Compte de messagerie
            Set éléments_envoyés = Dossier.Folders("Éléments envoyés")
            'balayage messages envoyés
            For Each Message In éléments_envoyés.Items
                If Message.Subject Like "*Relance*" _
                And (Message.SentOn < Date + 1 And Message.SentOn > Date) Then
                    MsgBox "Les emails du jour ont deja été envoyés"
                End If
            Next Message
        End If
    Next Dossier

    'libération objet instance application outlook
    Set olApp = Nothing

End Sub

C'est parfait ça marche nickel !!!

Encore un grand merci !

Ouais, rare et excellent !

Rechercher des sujets similaires à "recherche dossier elements envoyes outlook"