[VBA] Effacer contenu de cellules selon condition

DoublePoney

XLDnaute Nouveau
Bonjour à toutes et à tous,

Je suis tout nouveau sur ce forum et j'aurais besoin de vos lumières pour m'aider à résoudre un problème concernant une macro Excel que je n'arrive pas du tout à faire.

Le problème est le suivant :

J'ai un fichier contenant 5 colonnes avec dans les trois colonnes B, C et D des dates. En ce qui concerne les lignes, ce n'est pas fixe, chaque jour s'ajouteront d'autres lignes.
Je voudrais que le contenu des cellules dont les dates sont supérieures à 15 jours (à partir de la date courante) soit effacé.

Exemple, aujourd'hui nous sommes le 25 Avril, toutes les cellules contenant des dates antérieures au 10 Avril doivent être effacées.

Est-ce possible ?

Je vous remercie par avance.

Cordialement
 

Pièces jointes

  • ExcelDownloadTest.xlsx
    9.5 KB · Affichages: 56
  • ExcelDownloadTest.xlsx
    9.5 KB · Affichages: 69
  • ExcelDownloadTest.xlsx
    9.5 KB · Affichages: 71

Efgé

XLDnaute Barbatruc
Re : [VBA] Effacer contenu de cellules selon condition

Bonjour DoublePoney et bienvenu sur le forum

Une proposition avec ce que j'ai compris:
VB:
Sub test()
Dim i&, j&
With Sheets("Feuil1")
    For i = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row
        For j = 2 To 4
            If CDate(.Cells(i, j).Value) < Date - 15 Then .Cells(i, j).ClearContents
        Next j
    Next i
End With
End Sub

Cordialement
 

Efgé

XLDnaute Barbatruc
Re : [VBA] Effacer contenu de cellules selon condition

Re
Puisque tu sembles avoir aimé :D
La même en beaucoup plus rapide sur un grand nombre de lignes:
VB:
Sub test_2()
Dim i&, j&, T As Variant, Plg As Range

With Sheets("Feuil1")
    Set Plg = .Range(.Cells(2, 2), .Cells(.Rows.Count, 1).End(3)(1, 3))
End With

T = Plg
For i = LBound(T, 1) To UBound(T, 1)
    For j = LBound(T, 2) To UBound(T, 2)
        If CDate(T(i, j)) < Date - 15 Then T(i, j) = ""
    Next j
Next i
Plg = T

End Sub

Cordialement
 
Dernière édition:

Discussions similaires

Réponses
46
Affichages
871

Statistiques des forums

Discussions
312 248
Messages
2 086 593
Membres
103 248
dernier inscrit
Happycat