XL 2013 Envoi Email Rappel via Excel (VBA)

tvdh

XLDnaute Nouveau
Bonjour à tous,

J'ai créé un fichier excel avec des dates de rappel pour envoyer un document à des collègues.
Je souhaiterais recevoir un mail de rappel (à moi-même :)) lorsque "Send Survey" apparaît dans la colonne Q (cad 7 jours après la date en colonne E.

Idéalement, je souhaiterais que l'info se trouvant en colonne C apparaisse dans le corps de mon email.

J'ai essayé par moi-même, mais j'ai juste réussi à créer une macro qui m'envoie un mail avec un texte prédéfini et à cuqe fois que je la fait tourné. Je n'ai pas réussi à mettre de condition.

Merci d'avance pour votre aide :)

T
 

Pièces jointes

  • Working File Macro_internet.xlsm
    22 KB · Affichages: 130

JCGL

XLDnaute Barbatruc
Re : Envoi Email Rappel via Excel (VBA)

Bonjour à tous,

Bienvenue sur XLD

En A3 et suivantes :
=SI(ET(C3<>"";Q3<>"");MAX($A$2:A2)+1;"")

Puis lancer la procédure :

VB:
Sub Rappel()
    Dim OutLookApp As Object
    Dim OutLookMailItem As Object
    Dim DerL&, Lig&
    DerL = WorksheetFunction.Max(Columns(1)) + 2
    For Lig = 3 To DerL
        Set OutLookApp = CreateObject("outlook.application")
        Set OutLookMailItem = OutLookApp.createItem(0)
        With OutLookMailItem
            .To = "jcgl@xld.com"
            .Subject = "TDI: Envoi d'un rappel"
            .Body = "Envoyer un rappel à " & Range("C" & Lig) & " pour le RdV du " & Range("R" & Lig)
            .Display
            '.Send
        End With
        Set OutLookMailItem = Nothing
        Set OutLookApp = Nothing
    Next Lig
End Sub



A+ à tous
 
Dernière édition:

tvdh

XLDnaute Nouveau
Re : Envoi Email Rappel via Excel (VBA)

Bonjour JCGL,

Cela fonctionne super bien! Merci beaucoup.
Sans vouloir abuser, j'aurais quelques améliorations à vous demander :)

Je souhaiterais que l'email se génère dès ouverture du fichier.
Toutefois une fois que la colonne R indique "Yes", plus aucun rappel ne devrait être envoyé.

Pour l'instant, à chaque fois que la macro tourne, l'email est envoyé.

Encore un tout grand merci.
Bonne journée,
T
 

DL_13

XLDnaute Occasionnel
Re : Envoi Email Rappel via Excel (VBA)

Bonjour à tous,

Peut-être en appelant la procédure depuis Workbook_Open

Code:
Private Sub Workbook_Open()
Rappel
End Sub

et en incluant une condition dans la boucle de JCGL

style:

Sub Rappel()
Dim OutLookApp As Object
Dim OutLookMailItem As Object
Dim DerL&, Lig&
DerL = WorksheetFunction.Max(Columns(1)) + 2
Application.ScreenUpdating = False
For Lig = 3 To DerL
If UCase(Cells(Lig, 19)) = "YES " Then Exit For
Set OutLookApp = CreateObject("outlook.application")
Set OutLookMailItem = OutLookApp.createItem(0)
With OutLookMailItem
.To = "jcgl@xld.com"
.Subject = "TDI: Envoi d'un rappel"
.Body = "Envoyer un rappel à " & Range("C" & Lig) & " pour le RdV du " & Range("R" & Lig)
.Display
'.Send
End With
Cells(Lig, 19) = "YES "
Set OutLookMailItem = Nothing
Set OutLookApp = Nothing
Next Lig
Application.ScreenUpdating = True
End Sub

Dès que le mail est envoyé la cellule en Colonne S passe au vert

Bonne journée
 

Pièces jointes

  • Working File Macro_internet-1.xlsm
    24.3 KB · Affichages: 96

tvdh

XLDnaute Nouveau
Re : Envoi Email Rappel via Excel (VBA)

Bonjour DL_13,

J'ai rajouté les lignes de codes dans la boucle mais ça ne fonctionne pas.
Ceci dit, je n'arrive pas à faire ceci:
"Peut-être en appelant la procédure depuis Workbook_Open
Code :
Private Sub Workbook_Open()
Rappel
End Sub"

Comment fait-on pour appeler la procédure depuis Workbook_open? :)

Merci.
 

tvdh

XLDnaute Nouveau
Re : Envoi Email Rappel via Excel (VBA)

Bonjour à tous,

Je reviens vers vous car je cale toujours sur ma macro.
Je remets le fichier excel avec ce que j'ai fait.
Pourriez-vous me dire ce qui ne va pas?
Pour l'instant, plus rien ne se passe.

Merci bcp pour votre aide.

Tess
 

Pièces jointes

  • Working File Macro_internet_3.xlsm
    96.5 KB · Affichages: 130

Lav20

XLDnaute Nouveau
Bonjour, j'ai créer un fichier excel avec des délais prévisibles en fonction de mes actions à réaliser. Je voudrais recevoir un email 7 jours avant ce délais prévisible sur ma boite email qui fonctionne avec gmail. Dans cet email je souhaite que l'action a réalisé soit écrite.
De plus je voudrais que mon fichier excel s'ouvre ou démarrage de Windows. Pouvez vous m'apporter un petit coup de pouce car le code du dessus ne fonctionne pas.
Merci =)
 

mbellec

XLDnaute Nouveau
Bonjour,

Je rencontre le même besoin sur le fichier ci-joint.

J'aimerais qu'un mail soit envoyé automatiquement 1 mois après la date d'enregistrement en colonne I.

J'ai tenté une macro (mais je ne maitrise pas du tout et ca ne fonctionne pas).

l'idée est que le mail soit généré automatiquement sans besoin que le fichier s'ouvre mais je crois que ce n'est pas possible. si ce n'est pas possible, j'aimerais que le mail se génère en cliquant sur un bouton.

Pouvez-vous m'aider ???
Merci
Marine
 

Pièces jointes

  • 2018 16 PAPO Normandie.xlsx
    177.2 KB · Affichages: 9

Discussions similaires

Réponses
2
Affichages
203
Réponses
12
Affichages
230

Statistiques des forums

Discussions
312 113
Messages
2 085 426
Membres
102 887
dernier inscrit
MarcVeretz