Suppression ligne sous condition de date

[Résolu/Fermé]
Signaler
Messages postés
23
Date d'inscription
jeudi 11 septembre 2008
Statut
Membre
Dernière intervention
28 décembre 2009
-
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
-
Bonjour,

J'ai dans un fichier une liste de produits et leurs prixs à différentes dates (donc des doublons).
J'aimerai créer une macro en VBA afin de supprimer toutes les lignes da ma feuilles de calcul dans lesquelles la date est suppérieur au 31/08/2008.
Merci pour vos suggestions.

3 réponses

Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 167
Bonjour,

Voilà un exemple à adapter :
Sub SupprimeLigne()
Dim ws As Worksheet
Dim i As Long
Dim dDate As Date

    Set ws = Worksheets("Feuil1")  'La feuille qui contient les doublons
    i = 2                          'La première ligne à tester
    dDate = CDate("31/08/2008")
    
    With ws
        While .Range("A" & i).Value <> ""
            If CDate(.Range("A" & i).Value) > dDate Then
                .Rows(i).Delete
                i = i - 1
            End If
            i = i + 1
        Wend
    End With
    
    Set ws = Nothing    'Libère l'objet et la mémoire
    
End Sub

;o)
Messages postés
23
Date d'inscription
jeudi 11 septembre 2008
Statut
Membre
Dernière intervention
28 décembre 2009
1
Merci Polux,

maintenant faut que j'adapte la structure en fonction de mon fichier.
Je débute donc ca peut prendre du temps. J'ai trouvé un tutorial sur devellopez.com qui a l'air bien fait. On croise les doigts...
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 167
De rien.

Il y a effectivement de très bons tutos sur developpez.com. Regarde aussi dans la FAQ Excel et VBA, tu as des exemples dedans.

N'hésite pas à revenir au cas où. N'oublie pas de mettre le topic en résolu. Merci

Bon courage

;o)