Bonjour,
Il y a ambiguïté ! Tu parles de supprimer, dans ce cas la ligne disparaît, elle n'existe plus ! Tu ne peux donc vouloir simultanément qu'elle demeure, avec ses formules...
Si tu veux conserver la ligne et qu'elle n'affiche plus rien de C à I, d'abord, tu ne touches pas aux formules : en D et E elles n'afficheront rien si C est vide, en F tu mets la formule sous condition comme pour D et E et elle se comportera pareillement.
Pour conserver la ligne, tu ne supprimes pas, tu effaces, et tu n'effaces que la colonne C ainsi que les 3 colonnes G à I, et ta ligne n'affichera plus rien de C à I.
Pour une réalisation automatique de l'opération, tu dois faire appel à un code VBA s'exécutant à l'ouverture du fichier pour vérifier les dates en colonne D et effacer les cellules indiquées de la ligne lorsque la date est dépassée par la date du jour...
Private Sub Workbook_Open()
Dim hui As Date, dln%, i%
hui = Date
With Worksheets("Feuil1")
dln = .Range("D" & .Rows.Count).End(xlUp).Row
Application.ScreenUpdating = False
For i = 3 To dln
If .Cells(i, 4) <> "" And hui > .Cells(i, 4) Then
.Cells(i, 3).ClearContents
.Cells(i, 7).Resize(, 3).ClearContents
End If
Next i
End With
End Sub
Procédure à placer dans le module ThisWorkbook.
Cordialement.