Bonjour,
Je ne connais pas du tout le VBA mais je me permets de solliciter votre aide.
Je possède un fichier Excel qui liste les tâches de mes différents projets. Chaque tâche possède un nom de tâche (colonne C), une date de début (colonne I) et une date de fin (colonne K). Attention : certaines tâches peuvent ne pas avoir de date de fin.
Ce qui est souhaité :
1/ C'est d'envoyer un email pour toutes les lignes de mon fichier dont les tâches disposes uniquement d'une date de fin. Si pas de date de fin saisi dans la colonne K, dans ce cas je n'envoi aucun email.
2/ Dans l'email envoyé avoir un titre d'objet ainsi qu'une phrase du type "La tâche xxxx n'est pas finalisé, merci de la traiter au plus vite". Le xxxx doit correspondre au texte saisi en colonne C qui correspond au nom de la tâche.
J'ai réussi a faire quelque chose (ci-dessous) mais cela ne fonctionne pas correctement car d'une part je reçois des emails pour les tâches ne possédant pas de date de fin (cellules vides) et plus d'emails qu'il n'y a de lignes dans mon tableau.
Informations complémentaires : J'utilise Microsoft Office 365 avec dernière version d'Excel.
Je ne connais pas du tout le VBA mais je me permets de solliciter votre aide.
Je possède un fichier Excel qui liste les tâches de mes différents projets. Chaque tâche possède un nom de tâche (colonne C), une date de début (colonne I) et une date de fin (colonne K). Attention : certaines tâches peuvent ne pas avoir de date de fin.
Ce qui est souhaité :
1/ C'est d'envoyer un email pour toutes les lignes de mon fichier dont les tâches disposes uniquement d'une date de fin. Si pas de date de fin saisi dans la colonne K, dans ce cas je n'envoi aucun email.
2/ Dans l'email envoyé avoir un titre d'objet ainsi qu'une phrase du type "La tâche xxxx n'est pas finalisé, merci de la traiter au plus vite". Le xxxx doit correspondre au texte saisi en colonne C qui correspond au nom de la tâche.
J'ai réussi a faire quelque chose (ci-dessous) mais cela ne fonctionne pas correctement car d'une part je reçois des emails pour les tâches ne possédant pas de date de fin (cellules vides) et plus d'emails qu'il n'y a de lignes dans mon tableau.
VB:
Sub envoimail()
Dim messagerie As Object
Dim email As Object
Dim cel As Range
Dim delai As Integer
Set messagerie = CreateObject("Outlook.Application")
delai = 1 'jours
For Each cel In Range("A4:A" & Range("A4").End(xlDown).Row)
If cel.Offset(, 7).Value - Now < delai Then
Set email = messagerie.CreateItem(0)
With email
.to = "monadresseemail@toto.fr"
.Subject = "mettre ici le titre du mail"
.body = "Bonjour, la tâche " & cel.Offset(, 2) & " arrive à échéance." & vbCrLf & "Merci de la traiter dès que possible." & vbCrLf & "Cordialement"
.ReadReceiptRequested = True
.display ' à remplacer par .send si ok
End With
Set email = Nothing
End If
Next cel
Set messagerie = Nothing
End Sub
Informations complémentaires : J'utilise Microsoft Office 365 avec dernière version d'Excel.