Créer Msgbox alerte date dépassée

mix770

XLDnaute Impliqué
Bonjour à tous,
j'ai besion SVP d'un coup de main...
j'ai une macro sous la main qui s'active quand la date est dépassée, elle était dans le thisworkbook,

Private Sub Workbook_Open()
Dim i As Long, Msg As String
Sheets("ACCUEIL").Activate
With Sheets("feuil1")
For i = 6 To .Cells(Rows.Count, 8).End(xlUp).Row
If .Cells(i, 8).Value <= Date - 5 And .Cells(i, 9) = "" Then Msg = Msg & .Cells(i, 8).Value & vbLf
Next i
End With
If Len(Msg) > 0 Then MsgBox "Attention, des demandes ne sont toujours pas traitées" & vbLf & Msg
End Sub
elle fonctionnait dans mon ancien fichier car il n'y avait qu'une page avec une seul plage de recherche.
Aujourd'hui je souhaiterai quand une date est inscrite, qu'a l'ouverture du fichier un message d'alerte s'active avec le nom du site concerné, le problème est qu'il y a 30 onglets, un par site.
je vous joins le modèle,
Merci à vous
 

Pièces jointes

  • alerte msgbox.xls
    58.5 KB · Affichages: 140

BILLY THE KID MASTER

XLDnaute Nouveau
Re : Créer Msgbox alerte date dépassée

Bonjour,

Peut-être ça ?

Private Sub Workbook_Open()

Dim i As Long, Msg As String, sheet As Object

Sheets("ACCUEIL").Activate
For Each sheet In Worksheets
For i = 6 To Cells(Rows.Count, 8).End(xlUp).Row
If Cells(i, 8).Value <= Date - 5 And Cells(i, 9) = "" Then Msg = Msg & Cells(i, 8).Value & vbLf
Next i
Next
If Len(Msg) > 0 Then MsgBox "Attention, des demandes ne sont toujours pas traitées" & vbLf & Msg

End Sub
 

mix770

XLDnaute Impliqué
Re : Créer Msgbox alerte date dépassée

Bonjour Billy,
je ne suis pas très fort encore sur les macro, celle que j'ai mis était pour un autre classeur donc les référence ne sont pas bonnes,
j'ai essayé, il ne se passe rien à l'ouverture
merci à toi
 

Paf

XLDnaute Barbatruc
Re : Créer Msgbox alerte date dépassée

Bonjour,

la seule référence spécifique à un classeur est le nom de la feuille, donc en supprimant :
Code:
Sheets("ACCUEIL").Activate
ça devrait marcher.
Par ailleurs il serait peut-être intéressant de connaitre dans le message le nom de la feuille incriminée;

Code:
Private Sub Workbook_Open()
Dim i As Long, Msg As String
For Each Feuille In Worksheets
  With Feuille

  For i = 6 To .Cells(Rows.Count, 8).End(xlUp).Row
     If .Cells(i, 8).Value <= Date - 5 And .Cells(i, 9) = "" Then Msg = Msg & .Name & .Cells(i, 8).Value & vbLf
  Next i
End With

If Len(Msg) > 0 Then MsgBox "Attention, des demandes ne sont toujours pas traitées" & vbLf & Msg
End Sub

Bonne suite
 

mix770

XLDnaute Impliqué
Re : Créer Msgbox alerte date dépassée

Bonjour,
merci de ta réponse cela ne marche pas, mais après réflexion, il sera plus lisible puisque j'ai une page d'accueil avec les noms des sites, d'afficher un message si il n'y a pas de réponse.
je résume donc mon idée:
en C37 on entre la date d'envoi
D37 date de réception de réponse
donc si dans les 15 jours il n'y a pas de date dans D37 en E37 s'affiche un symbole smiley...
merci à vous
 

Statistiques des forums

Discussions
311 720
Messages
2 081 907
Membres
101 836
dernier inscrit
karmon