IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

Ajouter un suivi dans un mail Outlook


Sujet :

Excel

  1. #1
    Membre habitué Avatar de goninph
    Homme Profil pro
    Inscrit en
    Octobre 2013
    Messages
    725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2013
    Messages : 725
    Points : 184
    Points
    184
    Par défaut Ajouter un suivi dans un mail Outlook
    Hello,

    Je ne trouve pas comment ajouter un suivi ou rappel sur un mail Outlook via VBA excel.

    J'ai essayer plusieurs combine mais sans succès

    Merci pour votre aide
    Philippe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    'Création du mail avec Outlook
        Set messagerie = CreateObject("Outlook.Application")
        Set email = messagerie.CreateItem(0)
     
    'Boîte de message si OK
        MsgBox _
        "À… " & vaRecipients & _
        vbCrLf & vbCrLf & _
        "Cc… " & vaCopyTo & _
        vbCrLf & vbCrLf & _
        stSubject _
        , vbInformation, "Le mail suivant est prêt à être envoyé :"
        With email
            .To = vaRecipients
            .CC = vaCopyTo
    '        .ReminderSet = True
    '        .ReminderTime = Now()
    '        .ReminderTime = Now() + 7
    '        .StartDate = Now()
    '        .DueDate = Now() + 7
            .Subject = stSubject
            .HTMLBody = _
            "<p style='font-family:calibri;font-size:14.5'>" & _
            vaMsg & _
            "</p>" ' Fin de la mise en forme de la police
            .Display
        End With
        Set email = Nothing
        Set messagerie = Nothing
    Exit Sub

  2. #2
    Membre habitué Avatar de goninph
    Homme Profil pro
    Inscrit en
    Octobre 2013
    Messages
    725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2013
    Messages : 725
    Points : 184
    Points
    184
    Par défaut
    Hello,

    Je reviens à la charge.

    Que faut'il ajouter pour obtenir le suivi du mail, afin qu'il s'affiche dans la liste des tâche de Outlook ?

    Merci pour votre aide
    Philippe

    Nom : Suivi.png
Affichages : 579
Taille : 39,7 Ko

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    Option Explicit
    Const EMBED_ATTACHMENT As Long = 1454
    Sub Suivi_du_Journal() 'Macro pour mise en forme standard
            If MsgBox("Créer un suivi du Journal ?", vbYesNo + vbQuestion, "Suivi Outlook") = vbYes Then
    Call Suivi_du_Journal_OK
         End If
    End Sub
    Sub Suivi_du_Journal_OK()
        Dim stSubject As Variant
        Dim messagerie As Object
        Dim Suivi As Object
    On Error GoTo FichierNonEnregistré
    'Création du mail avec Outlook
        Set messagerie = CreateObject("Outlook.Application")
        Set Suivi = messagerie.CreateItem(6) '0=Mail 1=RDV 2=Contact 3=Tache 6= Elément outlook
        With Suivi
            .Subject = "Suivi tu test"
     
    'Que faut'il ajouter pour avoir un suivi comme l'image
     
            .htmlbody = "Hello" & _
                    "<br><br><br>" & _
                    "<A href=""" & ActiveWorkbook.FullName & """> ! Clic pour ouvrir le fichier ! </A><br>" & _
                    "<br>" & _
                    "<A href=""" & ActiveWorkbook.Path & """> ! Clic pour ouvrir le dossier ! </A><br>"
            .Display
    End With
        Set Suivi = Nothing
        Set messagerie = Nothing
    Exit Sub
    FichierNonEnregistré:
            MsgBox _
            vbCrLf & _
            "Impossible de créer une tâche si le fichier n'est pas enregistré" & _
            vbCrLf & vbCrLf & _
            "Cliquer sur la disquette dans les partenaires" & _
            vbCrLf & vbCrLf & "- Erreur VBA : " & vbCrLf & "  " & Err.Description & _
            "", vbExclamation, "! Oups !"
    End Sub

  3. #3
    Membre chevronné Avatar de mfoxy
    Homme Profil pro
    Automation VBA
    Inscrit en
    Février 2018
    Messages
    752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Belgique

    Informations professionnelles :
    Activité : Automation VBA
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2018
    Messages : 752
    Points : 1 971
    Points
    1 971
    Par défaut bonjour
    Hello,

    Peut-être un truc du genre
    Ajouter une variable Date et ajout dans ton bloc with

    Bat
    Micka

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
     
    'ajout variable
        Dim datDue As Date
        datDue =  #19/10/2018 4:00:00 PM# ' à modifier par date heure
     
    'dans bloc With
     
            .FlagStatus = olFlagMarked
            .FlagRequest = "Follow up"
            .ReminderTime = datDue
            .ReminderOverrideDefault = True
            .ReminderSet = True
            .TaskStartDate = Date
            .TaskDueDate = datDue
     
    End Sub
    Michaël

    Si mon aide/avis vous a été profitable , n'hésitez pas à cliquer sur , ça fait toujours plaisir...
    _________________________________________________________________________________________________________________

    "Tout le monde est un génie. Mais si on juge un poisson sur sa capacité à grimper à un arbre, il passera sa vie à croire qu'il est stupide..."
    Albert Einstein

  4. #4
    Membre habitué Avatar de goninph
    Homme Profil pro
    Inscrit en
    Octobre 2013
    Messages
    725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2013
    Messages : 725
    Points : 184
    Points
    184
    Par défaut
    Hello,

    Y a du mieux, la date de fin change, bravo, mais la tâche n'est pas activée


    Les 2 lignes .flag font planté la macro

    La ligne de rappel s'active et se désactive mais la date et l'heure reste bloqués sur aujourd'hui

    D'autre suggestions ?

    Merci et bonne soirée
    Philippe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    Sub Suivi_du_Journal_OK()
        Dim stSubject As Variant
        Dim messagerie As Object
        Dim Suivi As Object
        Dim dateDebut As Date
        Dim dateFin As Date
        Dim dateRappel As Date
        dateRappel = Now() + 2
        dateDebut = Now()
        dateFin = Now() + 7
    On Error GoTo FichierNonEnregistré
    'Création du mail avec Outlook
        Set messagerie = CreateObject("Outlook.Application")
        Set Suivi = messagerie.CreateItem(6) '0=Mail 1=RDV 2=Contact 3=Tache 6= Elément outlook
        With Suivi
            .Subject = "Suivi tu test"
     
     
    '        .FlagStatus = olFlagMarked
    '        .FlagRequest = "Follow up"
            .ReminderOverrideDefault = True
            .ReminderSet = True    'Rappel
    '        .ReminderTime = dateRappel
            .TaskStartDate = dateDebut
            .TaskDueDate = dateFin
     
     
     
     
            .htmlbody = "Hello" & _
                    "<br><br><br>" & _
                    "<A href=""" & ActiveWorkbook.FullName & """> ! Clic pour ouvrir le fichier ! </A><br>" & _
                    "<br>" & _
                    "<A href=""" & ActiveWorkbook.Path & """> ! Clic pour ouvrir le dossier ! </A><br>"
            .Display
    End With
        Set Suivi = Nothing
        Set messagerie = Nothing
    Exit Sub
    FichierNonEnregistré:
            MsgBox _
            vbCrLf & _
            "Impossible de créer une tâche si le fichier n'est pas enregistré" & _
            vbCrLf & vbCrLf & _
            "Cliquer sur la disquette dans les partenaires" & _
            vbCrLf & vbCrLf & "- Erreur VBA : " & vbCrLf & "  " & Err.Description & _
            "", vbExclamation, "! Oups !"
    End Sub

  5. #5
    Membre chevronné Avatar de mfoxy
    Homme Profil pro
    Automation VBA
    Inscrit en
    Février 2018
    Messages
    752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Belgique

    Informations professionnelles :
    Activité : Automation VBA
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2018
    Messages : 752
    Points : 1 971
    Points
    1 971
    Par défaut re
    Je suis pas expert mais si tes dates ne se modifient pas, c est peux être avec ta façon d incrémenté ton Now()+2.
    Now() renvoie un la "date" système de style : "dd/mm/yyyy hh:mm:ss"Pour lui ajouter 5 heures par exemple : Now + TimeSerial(5,0,0).

    Au niveau de ta ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set Suivi = messagerie.CreateItem(6) '0=Mail 1=RDV 2=Contact 3=Tache 6= Elément outlook
    Pourquoi utiliser l'indice (6) et pas (0) pour mail, les .flag* ne sont peut-être pas compatible pour ce type d éléments ?
    Voir pour ton cas utiser une tâche ?

    Je ne saurais faire des test car pas d outlook à domicile, don pas évident de t aider plus, sorry
    Bat
    Michaël

    Si mon aide/avis vous a été profitable , n'hésitez pas à cliquer sur , ça fait toujours plaisir...
    _________________________________________________________________________________________________________________

    "Tout le monde est un génie. Mais si on juge un poisson sur sa capacité à grimper à un arbre, il passera sa vie à croire qu'il est stupide..."
    Albert Einstein

  6. #6
    Membre habitué Avatar de goninph
    Homme Profil pro
    Inscrit en
    Octobre 2013
    Messages
    725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2013
    Messages : 725
    Points : 184
    Points
    184
    Par défaut
    Hello,

    On progresse.

    Le mail (0) ou l'élément Outlook (6) réagisse la même chose.

    Avant j'avais une tâche, mais le problème c'est que je ne peux pas classer une tâche dans un dossier de ma messagerie et le code HTML ne fonctionne pas pour les tâches

    Je compte sur vous on va y arriver ...

    Now + TimeSerial(10,60,20) le 10 fait bouger la date le 60 et le 20 n'ont pas d'influence sur l'heure

    En fait tout fonctionne presque, mais la tâche ne s'active pas

    Excellent weekend
    Philippe

    Nom : 2018-10-19_18-07-29.png
Affichages : 468
Taille : 93,5 Ko


    Suivi d'un mail Outlook.xlsm

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    Sub Suivi_du_Journal_OK()
        Dim stSubject As Variant
        Dim messagerie As Object
        Dim Suivi As Object
        Dim dateDebut As Date
        Dim dateFin As Date
        Dim dateRappel As Date
        dateRappel = Now + TimeSerial(10, 60, 20)
        dateDebut = Now() + 1
        dateFin = Now() + 7
    On Error GoTo FichierNonEnregistré
    'Création du mail avec Outlook
        Set messagerie = CreateObject("Outlook.Application")
        Set Suivi = messagerie.CreateItem(6)     '0=Mail 1=RDV 2=Contact 3=Tache 6= Elément outlook
        With Suivi
            .Subject = "Suivi tu test"
     
     
     
    '        .FlagStatus = olFlagMarked
    '        .FlagRequest = "Follow up"
            .ReminderOverrideDefault = True
            .ReminderSet = True    'Rappel
    '        .ReminderTime = dateRappel
            .TaskStartDate = dateDebut
            .TaskDueDate = dateFin
     
     
     
     
            .htmlbody = "Hello" & _
                    "<br><br><br>" & _
                    "<A href=""" & ActiveWorkbook.FullName & """> ! Clic pour ouvrir le fichier ! </A><br>" & _
                    "<br>" & _
                    "<A href=""" & ActiveWorkbook.Path & """> ! Clic pour ouvrir le dossier ! </A><br>"
            .Display
    End With
        Set Suivi = Nothing
        Set messagerie = Nothing
    Exit Sub
    FichierNonEnregistré:
            MsgBox _
            vbCrLf & _
            "Impossible de créer une tâche si le fichier n'est pas enregistré" & _
            vbCrLf & vbCrLf & _
            "Cliquer sur la disquette dans les partenaires" & _
            vbCrLf & vbCrLf & "- Erreur VBA : " & vbCrLf & "  " & Err.Description & _
            "", vbExclamation, "! Oups !"
    End Sub

Discussions similaires

  1. [Toutes versions] Afficher un élément d'une liste dans un mail outlook
    Par hassine dans le forum SharePoint
    Réponses: 11
    Dernier message: 08/11/2010, 11h39
  2. Ajout de champs dans un mail
    Par LuckyLuke56 dans le forum Langage
    Réponses: 6
    Dernier message: 19/11/2009, 10h01
  3. ajouter des indicateur dans un mail
    Par sky88 dans le forum VB.NET
    Réponses: 2
    Dernier message: 28/07/2009, 17h26
  4. Insertion d'une ligne d'entete dans un mail outlook.
    Par Gautheron dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 04/05/2009, 14h20
  5. Créer un lien "imprimer" dans un mail Outlook
    Par Charlotte75 dans le forum Outlook
    Réponses: 2
    Dernier message: 18/03/2009, 13h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo