Alerte Excel contrôle par contrôle

Salut à tous,

Voilà je viens vous voir car j'ai un souci sur un fichier Excel que je dois faire pour mon travail..

Contexte : Je dois créer un fichier de tâches à faire "contrôles réglementaire" donc avec des dates. J'aimerais qu'à chaque contrôle réglementaire une vérification soit faite et si la date d’aujourd’hui dépasse la date du contrôle je reçoive un mail d'alerte.

(Nota : tant qu'à faire avoir une alerte aussi 7 jours avant que la date d'aujourd'hui dépasse la date du contrôle.

Je pense que tout ça passe passera pas une VBA mais j'attends vos propositions

Je ne sais pas si je me suis bien fait comprendre..

Donc s'il y a besoin de précisions n'hésitez pas

Bonjour,

Petite mise en situation

En A2 tu as la date du controle

dans l'editeur vba , tu ouvre le module thisworkbook puis tu colles

Private Sub Workbook_Open()
    Dim xlws As Excel.Worksheet
    Dim olApp As Outlook.Application
    Dim olMail As Outlook.MailItem
    Dim strDestMail$
    strDestMail = "Adresses mails destinataires" 'séparer les adresses mails par un ;
    Set xlws = ThisWorkbook.Sheets(1)
    If xlws.Range("A2") > (Now - 7) Then 'définir le nombre de jour pour lequel tu veux envoyer le mail
        Set olApp = CreateObject("Outlook.Application")
        Set olMail = olApp.CreateItem(olMailItem)
        With olMail
            .Subject = "Date du contrôle proche"
            .Body = "Texte du Message"
            .To = strDestMail
            .Display
            .Send
        End With
        olApp.Quit
        Set olMail = Nothing
        Set olApp = Nothing
    End If
End Sub

par contre il y a demande de confirmation de l'envoie du mail

ça marche si tu as outlook

et il faut activer la référence microsoft outlook object xx.x

Mais si c'est une colonne entière à contrôler date par date le A2 ne fonctionne pas enfin si mais que sur cette cellule donc comment faire pour que ça soit la colonne entière?

Il me signale aussi une erreur dans le code que tu m'as donné "Erreur de compilation ; Type défini par l'utilisateur non défini" et il me surligne " Private Sub Workbook Open en jaune et "Dim olApp As Outlook.Application en bleu"

Je sais je suis chiant...

Je t ai donne un exemple pas une solution complète. Pour tester une colonne entiere il faut boucler sur la colonne c est evident.

Pour l erreur

et il faut activer la référence microsoft outlook object xx.x

Super

exemple de boucle

Dim rColonne as range, C as range
Dim DateAlerte as date
set rColonne=thisworkbook.sheets("LeNomDeLaFeuille").range("D:D") 'si c'est la colonne D à tester
for each C in rColonne
   DateAlerte=C + 7 '(si tu veux être averti 7 jours avant la date butoir)
   if DateAlerte > Now Then 'si ta date d'alerte n'est pas dépassé
      '...le code de l'envoie du message
   end if
next C

Salut à tous,

Désolé, j'étais sur un autre boulot.

J'ai un petit problème sur ma boucle, où faut-il que je l'a place?

Private Sub Workbook_Open()

Dim xlws As Excel.Worksheet

Dim olApp As Outlook.Application

Dim olMail As Outlook.MailItem

Dim strDestMail$

strDestMail = "Adresses mails destinataires" 'séparer les adresses mails par un ;

Set xlws = ThisWorkbook.Sheets(1)

Dim rColonne as range, C as range

Dim DateAlerte as date

set rColonne=thisworkbook.sheets("LeNomDeLaFeuille").range("D:D") 'si c'est la colonne D à tester

for each C in rColonne

DateAlerte=C + 7 '(si tu veux être averti 7 jours avant la date butoir)

if DateAlerte > Now Then 'si ta date d'alerte n'est pas dépassé

'...le code de l'envoie du message

end if

next C

Set olApp = CreateObject("Outlook.Application")

Set olMail = olApp.CreateItem(olMailItem)

With olMail

.Subject = "Date du contrôle proche"

.Body = "Texte du Message"

.To = strDestMail

.Display

.Send

End With

olApp.Quit

Set olMail = Nothing

Set olApp = Nothing

End If

End Sub

Bonjour,

Pourrais tu mettre ton fichier ou bien une partie afin d'examiner ton cas,

car sans fichier il va etre dur de te dire comment faire

Oui c'est vrai..

Alors je t'explique :

J'ai fait un tableau qui dépend de mes natures d'interventions avec l'entreprise qui s'en charge et un historique dans 4 dernières années. A droite se situe la date approximative d'un prochain contrôle et j'aimerais que si la date de contrôle dépasse la date d'aujourd'hui alors ça m'envoi un mail en me disant prend RDV.

Nota : tu peux jouer avec "la date d'aujourd'hui" en orange au dessus de l'onglet "prochain contrôle" les dates passent en rouge si jamais ça dépasse. (Je suis à la bourre sur le système de détection incendie je sais )

alors ce que j'aimerais c'est qu'il m'envoi un mail que pour les dates qui ne sont pas en Orange (car quand le prestataire vient il fait plusieurs choses en même temps donc pas besoin de 10 alertes mails).

Voilà si jamais y a des questions je suis dispo

Sinon on peut mettre un Msgbox non?

Des nouvelles?

Bonour,

Je sais pas quand j'aurai le temps mais je regarderais,

Rechercher des sujets similaires à "alerte controle"