Suppression de ligne avec date d'hier

Bonjour,

dans le fichier en PJ, pour la feuille "Données période" j'ai le code suivant destiné à supprimer des lignes si certaines conditions sont remplies.

Mon code marche bien avec la date d'aujourd'hui mais pas pour hier (date -1),

En clair dans ma feuille, la ligne 3468 devrait s'effacer mais ce n'est pas le cas.

La date est un copié collé, si je tape la date au clavier, là ça marche ???

6fichier.zip (744.79 Ko)

Pouvez-vous m'aider ?

Sub Supprime()

Dim i As Integer

For i = 2 To 10000

If Worksheets("Données période").Cells(i, "B") = Date - 1 And Worksheets("Données période").Cells(i, "Q") = "OUI" Then
Rows(i).EntireRow.Delete

End If
Next i

End Sub

Bonjour,

Le problème persiste si vous ajoutez .Value2 ?

If Worksheets("Données période").Cells(i, "B").Value2 = Date - 1

Merci de votre aide Saboh,

Je viens de faire l'essai.

Le problème persiste.

Bonjour,

PLusieurs remarques :

- Votre code se trouve dans la feuille et pas dans un module.

- Pour une boucle qui doit supprimer des lignes on ne commence jamais au début, mais on part de la fin pour remonter.

Sub Supprime()

Dim i As Long
Dim X As Date

For i = 10000 To 2 Step -1

X = Format(CDate(Worksheets("Données période").Range("B" & i)), "dd/MM/YYYY")
Y = DateAdd("d", -1, Date)

     If X = Y And Worksheets("Données période").Range("Q" & i) = "OUI" Then
      Rows(i & ":" & i).Delete

   End If
   Next i

End Sub

Merci beaucoup Xmenpl !

ça fonctionne !

Rechercher des sujets similaires à "suppression ligne date hier"