Envoi de mail automatique si condition remplie

Bonjour,

Je viens vous demander un petit coup de main sur une automatisation Excel que j'essaye - désespérément - de faire.

J'ai un classeur Excel avec une feuille contenant un tableau, permettant d'indexer toutes nos documentations, avec différentes colonnes permettant de gérer entre autres les dates de révision. Une colonne "Dernière date de révision" est remplie manuellement, et en fonction du type de documentation que c'est (trigramme dans la première colonne), une formule excel permet de calculer la "Prochaine date de révision" dans la dernière colonne, avec une mise en forme conditionnelle visuelle (je passe sur les détails des codes couleur). Voir pièce jointe "LigneExcel" pour visualiser le tout.

Ce que je cherche à faire c'est :

  • Si la date de prochaine révision d'une documentation dépasse la date du jour, alors cela envoie un mail
  • Le contenu du mail comprend le nom de la documentation (colonne C Nom de la documentation) MAIS aussi le lien hypertexte associé pour que les destinataires n'aient plus qu'à cliquer dessus pour procéder à la révision.

J'ai essayé de combiner du code sur la feuille avec une Macro d'envoi de mail, mais je m'y perds et surtout je n'arrive pas à faire de l'automatisme de code, c'est-à-dire un code que je n'aurai pas à modifier pour chaque ligne que je veux gérer, aussi bien au niveau du VBA que de la Macro.... Je suis obligé de ruser pour un peu près tout, et je me dis qu'il doit y avoir des moyens plus simples... (je suis par ailleurs obligé de mettre l'extension du fichier en dur dans la Macro si je ne veux pas avoir à créer une colonne spécialement pour ça, vu que je n'arrive pas à récupérer le lien hypertexte de la colonne C...)

Voici mes pistes :

Code VBA :

Private Sub Worksheet_Change(ByVal Target As Range)
If Range("O12") <= Date Then
Call EnvoiMail
End If
End Sub

Macro EnvoiMail :

Sub EnvoiMail()

    Dim OutApp As Object
    Dim OutMail As Object
    Dim strbody As String

        Set OutApp = CreateObject("Outlook.Application")
        Set OutMail = OutApp.CreateItem(0)

        strbody = "<font size=""3"" face=""Calibri"">" & _
                  "Bonjour,<br><br>" & _
                  "La documentation<B> " & ActiveCell.Offset(0, -11).Value & " </B>doit être révisée, merci d'en faire une relecture." & _
                  "<br><br>Cliquez sur ce lien pour ouvrir le fichier concerné : " & _
                  "<A HREF=""file://\\CHEMIN_DU_DOSSIER_DOCUMENTATION\" & Range ("O12").Value & ".docx" & _
                  """>ici</A>" & _
                  "<br><br>Cordialement," & _
                  "<br><br>L'Équipe Système et Réseau</font>"

        On Error Resume Next
        With OutMail
            .To = "DESTINATAIRE"
            .CC = ""
            .BCC = ""
            .Subject = "DOCUMENTATION - Révision nécessaire"
            .HTMLBody = strbody
            .Send
        End With
        On Error GoTo 0

        Set OutMail = Nothing
        Set OutApp = Nothing

End Sub

Pourriez-vous s'il vous plait m'aider à finaliser mon code pour le rendre aux petits oignons, ça serait super sympa...

Merci par avance à ceux qui essaieront ! N'hésitez pas à me dire si je ne suis pas clair ou si vous avez besoin de précisions quelconques.

Geoffrey

ligneexcel mailexcel

Je précise que j'ai déjà regardé les divers posts similaires, mais que je suis trop peu compétent pour pouvoir faire de l'adaptation de code malheureusement. Ceux mentionnés ci-dessus sont déjà des bouts de code trouvés sur internet...

Bonjour,

Avez-vous besoin d'éléments supplémentaires pour un peu d'aide ? Disponible pour fournir ce dont vous pourriez avoir besoin pour investiguer sur mon problème.

Bonjour,

Vraiment personne pour m'aider s'il vous plait ?

Bonjour,

Je reviens vers vous pour savoir si quelqu'un pourrait m'aider pour cela s'il vous plaît ? Je n'ai jamais réussi à résoudre le problème...

Rechercher des sujets similaires à "envoi mail automatique condition remplie"