VBA pr selectionner des données entre plusieurs périodes

Bonjour, je reviens vers vous pour essayer de trouver une solution à mon problème, j'ai un fichier avec plusieurs colonnes, dont la colonne date. Je souhaiterai mettre en place un code vba qui selectionne les données de la période A et la période B et aprés supprimer les autres données.

22filtrer-date.xlsx (13.66 Ko)

merci

Bonjour,

28filtrer-date.xlsm (22.97 Ko)

A+

Merci beaucoup pour ton aide Frangy.

dans mon fichier réel les données seront en feuille1 mais les deux période à saisir seront en feuille 2 , alors où dois je ajouter feuille2 dans le code?

Sub Selectionner()

Dim DerLig As Long, Ligne As Long

Application.ScreenUpdating = False

With Worksheets("Feuil1")

DerLig = .Range("C" & Rows.Count).End(xlUp).Row

For Ligne = DerLig To 3 Step -1

If .Range("C" & Ligne).Value < .Range("G1").Value Or .Range("C" & Ligne).Value > .Range("I1").Value Then

If .Range("C" & Ligne).Value < .Range("G2").Value Or .Range("C" & Ligne).Value > .Range("I2").Value Then

.Range("C" & Ligne).EntireRow.Delete

End If

End If

Dans l'exemple joint, j'ai créé 4 plages nommées pour les valeurs limites : A_Debut, A_Fin, B_Debut et B_Fin.

Le code est modifié en conséquence

Sub Selectionner()
Dim DerLig As Long, Ligne As Long
    Application.ScreenUpdating = False
    With Worksheets("Feuil1")
        DerLig = .Range("C" & Rows.Count).End(xlUp).Row
        For Ligne = DerLig To 3 Step -1
            If .Range("C" & Ligne).Value < Range("A_Debut").Value Or .Range("C" & Ligne).Value > Range("A_Fin").Value Then
                If .Range("C" & Ligne).Value < Range("B_Debut").Value Or .Range("C" & Ligne).Value > Range("B_Fin").Value Then
                    .Range("C" & Ligne).EntireRow.Delete
                End If
            End If
        Next Ligne
    End With
End Sub
24filtrer-date.xlsm (23.55 Ko)

A+

Rechercher des sujets similaires à "vba selectionner donnees entre periodes"