Il y a actuellement 99 visiteurs
Jeudi 17 Juin 2021
accueilactualitésdossierscomparer les prixtélécharger gratuitement vos logicielsoffres d'emploiforum informatique
Connexion
Créer un compte

VBA : Mail à date atteinte ou rappel via Excel

Besoin d'aide pour configurer un serveur ? Vous souhaitez obtenir des conseils pour référencer votre site ? Un petit souci pour accéder à votre FTP ? Des soucis de programmation en PHP / ASP / HTML / XHTML / XML / XSLT / CSS / ReactJS / AngularJS / VueJS / CGI / PERL / C / MySQL / PostgreSQL ??? Nous avons peut-être la solution dans ce forum ...

VBA : Mail à date atteinte ou rappel via Excel

Message le 14 Déc 2017 14:13

Bonjour.

J'aimerai créer un fichier excel avec des dates, des adresses mail, les corps des messages et le sujets, respectivement dans 4 colonnes, puis créer une macro qui enverrait un mail via Outlook une fois la date correspondante atteinte.

J'ai quelques bases de programmation, mais en VBA je suis plutôt débutant. Cependant en piochant à droite à gauche, j'ai réussi à trouver un code qui fonctionne mais ne va pas "pas assez loin" (voir ci-dessous).

En fait lors de la récupération du mail il ne semple pas valider pas par "entrée" (du coup quand Outlook s'ouvre l'adresse mail est bien écrite dans le champs "destinataire" mais n'est pas validée, je ne sais pas si c'est clair).

Et le code ne semble pas envoyer le message, mais ça vient peut-être de la même chose justement.

Code: Tout sélectionner
Sub SendEmail()
           
Dim OutApp As Object
Dim OutMail As Object
Dim EmailSubject As String
Dim EmailSendTo As String
Dim MailBody As String
       
Set Rng = Range(Range("C1"), Range("C" & Rows.Count).End(xlUp))
     
For Each cell In Rng
If cell.Value <> "" Then

'Get Due Date
    Dte = cell.Value
   
'Get 2 days away by taking 2 days off cell Dte value
    MailDteNear = DateAdd("d", -2, Dte)
   
'Due date is the cell value
    MailDteDue = Dte
   
'Check 2 days away and send to column D address
    If Date = MailDteNear Then
    mail = True
    EmailSendTo = cell.Offset(0, 1).Value
    End If
   
'Check Due and send to column D & E address
    If Date = MailDteDue Then
    mail = True
    EmailSendTo = cell.Offset(0, 1).Value & "; " & cell.Offset(0, 2).Value
    End If
   
 If mail = True Then
   
'Subject string
    EmailSubject = Range("A1").Value 'Cell A1
   
'Mail Body
    MailBody = cell.Offset(0, -1).Value 'Column B
 
'Send Mail
        Set OutApp = CreateObject("Outlook.Application")
        Set OutMail = OutApp.CreateItem(o)
        With OutMail
            .Subject = EmailSubject
            .To = EmailSendTo
            '.bcc
            .Body = MailBody
            .Display
            '.send
        End With
 
        Set OutMail = Nothing
        Set OutApp = Nothing
        mail = False
        EmailSendTo = ""
       
 End If
 End If
Next


S'il est important de savoir le vrai but, en fait ça serait que le fichier contenant des dates d'expiration et permettant de prévenir une fois la date atteinte, ou même faire un rappel un peu avant.

L'idéal serait que cela puisse fonctionner même quand le fichier n'est pas ouvert, mais ça semble plus compliqué.

Merci d'avance pour votre aide.
mlkgiosn
Apprenti(e) Expert(e)
Apprenti(e) Expert(e)
 
Messages: 393
Inscription: 09 Avr 2010 13:54
 



Sujets similaires

Message orange notification mail
Salut tout le monde lorsque je démarre une fois sur le bureau mon logiciel messagerie orange notification mail me montre des emails "bizarres" (voir la capture écran) soi-disant à ouvrir et lorsque je rentre sur ma boite mail orange fort heureusement ils n'y sont pas mème en indésir ...
Réponses: 4

Message G mail ne fonctionne pas correctement
Bonjour,J'utilise Chrome et la messagerie G mail avec windows 7.Les mails arrivent et partent sans pbs .Mais je ne peux pas les ouvrir , les supprimer .Je peux seulement le faire en ouvrant g mail en navigation privée ou en HTML.J'ai essayé diverses méthodes sans succès.Merci pour votre aide et joye ...
Réponses: 1

Message Comment envoyer une vidéo par mail ?
Bonjour.Je souhaite envoyer par mail une vidéo de présentation d'une durée de 1 mn 40, mais la boîte mail me refuse l'envoie car trop lourd. Y'a t'il un moyen d'envoyer la vidéo en pièce jointe en direct, sans passer par Dropbox ou autre site du genre. Je précise que j'ai comprimé à 2 reprises la vi ...
Réponses: 2

Message [Réglé] reception mail
Bonjour,J'ai du cliquer sur quelque chose qu'il ne fallait pas car depuis 2/3 jours je reçois plein de mail " Postmaster@outlook.com"Je n'utilise pas Outlook.Comment éviter cela?.Cdt
Réponses: 16

Message Connexion yahoo mail avec Firefox
Bonjour à tous,Le problème est le suivant : depuis plusieurs jours, sans que j'aie rien modifié, chaque fois que je veux consulter ma messagerie yahoo, je dois entrer mon adresse mail et mon mot de passe pour m'y connecter.Suis sous Windows 10 Pro version 1903 avec navigateur Firefox à jour.Précisio ...
Réponses: 5

Message [réglé] DATE SE DEREGLE
Bonjour,Mon pc ne garde pas la date du jour, aussi bien au démarrage, qu'après mise en veille.J'ai ,changé 3 fois de pile.Le service temps Windows est OKLe temps internet est OKQue faire?
Réponses: 9

Message boite mail
Bonjour je suis chez orange, la boite mail d'orange est un calvaire, je voudrais crée une nouvelle adresse mail ailleurs (ça ne me pose aucun problème de changer) je ne sais ou aller, pour une boite gratuite, si vous avez une idée ? merci
Réponses: 5


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités


.: Nous contacter :: Flux RSS :: Données personnelles :.