Bonjour, voila mon problème
J ai des dates dans la colonne W et des "oui" ou "non" dans la colonne X
je voudrais que si la colonne W a une date dépassée de la date d'aujourd hui + "non" dans la colonne X alors la MSGbox affiche "Certaines dates sont dépassées"
Même si il y a une seule ligne qui possède cette conditions
mais si ma colonne a une date dépassée de la date d'aujourd hui + "oui" dans la colonne X alors la MSGbox affiche "Les dates sont respectées"
Le problème est que ma macro affiche toujours
"Les dates sont respectées" même si une ligne remplie les conditions "Date dépassée" + "non"
Private Sub Workbook_Open()
Dim dLig As Long, Lig As Long
Dim Ind As Integer
Dim TabCol() As String
Dim Msg As String
Dim alerte As String
' Définir le tableau des colonnes à vérifier
TabCol = Split("W,X", ",")
' Avec la feuille nommée de ce classeur
With ThisWorkbook.Sheets("HSE")
' Pour chaque colonne à vérifier
For Ind = 0 To UBound(TabCol) - 1
' Dernière ligne
dLig = .Range(TabCol(Ind) & Rows.Count).End(xlUp).Row
' Pour chaque ligne
For Lig = 11 To dLig
'Si date dépassée et non fermé
If DateDiff("d", .Range(TabCol(Ind) & Lig), Date) >= 1 And Range(TabCol(Ind) & Lig) = "non" Then
alerte = "Certaines dates sont dépassées"
Else
alerte = "Les dates sont respectées"
End If
Next Lig
Next Ind
End With
MsgBox alerte, vbInformation, "ATTENTION..."
End Sub
Merci d'avance