Bonsoir le forum,
Je me retrouve face à un os...
J'ai un tableau avec en colonne J des dates. J'ai voulu implémenter un code qui me renvoi une MsgbBox quand les dates sont dépassées et une autre MsgBox quand les dates arrivent à échéance (pour l'exemple 5 jours). Tout fonctionne à partir du moment où il y a bien une date dépassée, les 2 MsgBox s'affichent consécutivement.
Cependant, lorsqu'aucune de mes dates n'est dépassées, la deuxième MsgBox ne s'affiche plus. Je pense que j'ai lié la remontée de la deuxième MsgBox à la première mais je ne trouve pas la solution pour que les deux puissent être indépendante.
De plus, lorsque qu'aucune de mes dates n'arrivent à échéance la deuxième MsgBox s'affiche vide alors que je souhaiterai que celle-ci n'apparaissent que s'il y a une information à donner...
Je joue l'apprenti sorcier et me suis tordu le cerveau dans tous les sens mais malgré tous mes efforts je ne trouve pas d'issue.
Je vous remercie par avance pour votre aide précieuse.
Je vous joins le code en question :
Private Sub Worksheet_Activate()
Dim c As Range
With Sheets("Feuil1")
For Each c In Range(.[P3], [P65536].End(xlUp))
If c <> "" Then
On Error Resume Next
If c.Value < Date Then
If txt = "" Then txt = "xxxxxxxx" & vbCrLf & vbCrLf
txt = txt & c.Offset(, -14) & " xxxxxx " & c.Offset(, 0) & vbCrLf
If c.Value < Date + 5 Then
txt1 = c.Offset(, -14) & " xxxxx " & c.Offset(, 0) & vbCrLf
End If
End If
End If
Next c
If txt <> "" Then MsgBox txt, vbCritical, "xxxxx"
If txt <> "" Then MsgBox txt1, vbInformation, "xxxxx"
End With
End Sub
Merci
Je me retrouve face à un os...
J'ai un tableau avec en colonne J des dates. J'ai voulu implémenter un code qui me renvoi une MsgbBox quand les dates sont dépassées et une autre MsgBox quand les dates arrivent à échéance (pour l'exemple 5 jours). Tout fonctionne à partir du moment où il y a bien une date dépassée, les 2 MsgBox s'affichent consécutivement.
Cependant, lorsqu'aucune de mes dates n'est dépassées, la deuxième MsgBox ne s'affiche plus. Je pense que j'ai lié la remontée de la deuxième MsgBox à la première mais je ne trouve pas la solution pour que les deux puissent être indépendante.
De plus, lorsque qu'aucune de mes dates n'arrivent à échéance la deuxième MsgBox s'affiche vide alors que je souhaiterai que celle-ci n'apparaissent que s'il y a une information à donner...
Je joue l'apprenti sorcier et me suis tordu le cerveau dans tous les sens mais malgré tous mes efforts je ne trouve pas d'issue.
Je vous remercie par avance pour votre aide précieuse.
Je vous joins le code en question :
Private Sub Worksheet_Activate()
Dim c As Range
With Sheets("Feuil1")
For Each c In Range(.[P3], [P65536].End(xlUp))
If c <> "" Then
On Error Resume Next
If c.Value < Date Then
If txt = "" Then txt = "xxxxxxxx" & vbCrLf & vbCrLf
txt = txt & c.Offset(, -14) & " xxxxxx " & c.Offset(, 0) & vbCrLf
If c.Value < Date + 5 Then
txt1 = c.Offset(, -14) & " xxxxx " & c.Offset(, 0) & vbCrLf
End If
End If
End If
Next c
If txt <> "" Then MsgBox txt, vbCritical, "xxxxx"
If txt <> "" Then MsgBox txt1, vbInformation, "xxxxx"
End With
End Sub
Merci