Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Macro avec MSGBOX si date du jour dépassée

matthieu2701

XLDnaute Occasionnel
Bonjour,

J'ai un tableau de suivi pour les réclamations. De temps en temps, je dois mettre en attente des dossiers car j'attends des retours de services transverses.

Dans mon fichier, en colonne U, je rempli la date à laquelle je souhaite être alerté.

J'aimerais qu'à l'ouverture du fichier, le macro recherche les dates du jour ou dépassée afin de m'alerter par MSGBOX.

J'espère avoir été assez clair.

Merci par avance.
 

Pièces jointes

  • Macro alerte.xls
    23.5 KB · Affichages: 94
Dernière édition:

matthieu2701

XLDnaute Occasionnel
Re : Macro avec MSGBOX si date du jour dépassée

Je rempli la cellule si je souhaite être alerté à une date précise. Si la case n'est pas rempli, je ne souhaite pas que la macro me note celle ligne dans la MSGBOX
 

Modeste

XLDnaute Barbatruc
Re : Macro avec MSGBOX si date du jour dépassée

Bonsoir,

Merci à Docmarti d'avoir pris le relais

Et que donnerait le test suivant:
VB:
If .Cells(lig, 21) > 0 And .Cells(lig, 21) <= Date Then ...
 

Docmarti

XLDnaute Occasionnel
Re : Macro avec MSGBOX si date du jour dépassée

Bonjour matthieu2701

Je n'ai pas fais attention. Je pensais que tu avais utilisé cette suggestion que je faisais et qui fonctionne aussi.

Code:
If IsDate(.Cells(lig, "U")) And .Cells(lig, "U") <= Date Then

Bonjour Modeste

Cordialement

Docmarti
 

matthieu2701

XLDnaute Occasionnel
Re : Macro avec MSGBOX si date du jour dépassée


Cela fonctionne. Merci

Est-il possible de ne pas faire afficher la MSGBOX si aucune date n'est en Alerte ?
 

Modeste

XLDnaute Barbatruc
Re : Macro avec MSGBOX si date du jour dépassée

Bonjour matthieu2701, Docmarti,

Est-il possible de ne pas faire afficher la MSGBOX si aucune date n'est en Alerte ?
Ben, en testant la variable ch: si aucune date n'est en alerte, elle sera vide à la sortie de la boucle ... donc:
Code:
If ch <> "" Then MsgBox "Sont en retard ... ou presque: " & vbCr & ch
... devrait fonctionner!?
 

matthieu2701

XLDnaute Occasionnel
Re : Macro avec MSGBOX si date du jour dépassée


A quel endroit de la macro je dois la placer ?

Sub Alerte2()
With Sheets("Suivi récla")
For lig = 4 To .Cells(Rows.Count, 3).End(xlUp).Row
If IsDate(.Cells(lig, "U")) And .Cells(lig, "U") <= Date Then ch = ch & vbCr & .Cells(lig, 1) & " en ligne " & lig
Next lig
End With
MsgBox "Sont en retard ... ou presque: " & vbCr & ch
End Sub
 

Si...

XLDnaute Barbatruc
Re : Macro avec MSGBOX si date du jour dépassée

salut

en attendant que Modeste voit cette alerte , une autre proposition avec l'outil Tableau.
 

Pièces jointes

  • Open.xlsm
    34.9 KB · Affichages: 31
  • Open.xlsm
    34.9 KB · Affichages: 28
  • Open.xlsm
    34.9 KB · Affichages: 66

Modeste

XLDnaute Barbatruc
Re : Macro avec MSGBOX si date du jour dépassée

Re,
Salut Si...

Si... à dit:
en attendant que Modeste voit cette alerte , une autre proposition avec l'outil Tableau.
Oh mais ... quelle délicieuse surprise! ... Un tableau ...

.
matthieu2701 à dit:
A quel endroit de la macro je dois la placer ?
Whaaaa hé Matthieu! Sur ce coup-là tu n'as tout de même pas cherché bien longtemps ... Si? Je t'ai mis la ligne complète (la seconde moitié existe déjà; tu n'avais plus qu'à ajouter la première moitié ... devant la seconde)
Et puis je parlais de "la sortie de la boucle" ... ça te donnait un indice supplémentaire, tout de même!?

Tu te souviens qu'au départ j'ai suggéré -avec un peu d'insistance- de travailler avec une mise en forme conditionnelle? C'eût été plus simple, tout de même (même si "visuellement" tu préfères un MsgBox!)
 

Discussions similaires

Réponses
8
Affichages
2 K
Réponses
18
Affichages
392
Réponses
7
Affichages
568
Réponses
2
Affichages
397
Réponses
12
Affichages
709
Réponses
31
Affichages
2 K
Réponses
23
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…