Extraire données d'une requête selon critères

Bonjour à tous,

Voici mon problème :

Je possède actuellement un classeur excel composé de 4 feuilles contenant des données issues de requêtes (via Microsoft Query).

Une de ces requêtes m'affiche des produits (colonne A) avec des dates de fabrication prévues (colonne B).

J'aimerais que les lignes pour lesquelles les dates de fabrication sont supérieures à aujourd'hui soient automatiquement recopiées dans une autre feuille du classeur (sans avoir à modifier la requête à chaque fois, et je précise que Microsoft Query ne supporte pas de critère de filtrage tel que AUJOURDHUI() dans Excel).

Dans l'attente de vos précieux conseils, merci d'avance

En cherchant un peu je viens de trouver ça sur un autre forum (code VB) :

Sub delete_ligne()

Dim i As Integer

Application.ScreenUpdating = False

For i = 1 To 6600

If (Cells(i, 14) = 0 And (Cells(i, 11) = 2 Or Cells(i, 11) = 3 Or Cells(i, 11) = 4 Or Cells(i, 11) = 5 Or Cells(i, 11) = 6)) Then

Cells(i, 1).EntireRow.Delete

i = i - 1

End If

Next

Application.ScreenUpdating = True

End Sub

Si je l'adapte à mon problème, est-ce que ça peut marcher selon vous ? Ce code a l'air de supprimer les cellules de la 1ère colonne et non les lignes.

Sub delete_ligne()

Dim i As Integer

Application.ScreenUpdating = False

For i = 1 To 6600

If (Cells(i, 2) < AUJOURDHUI() Or (Cells(i, 2) <> 0 Then

Cells(i, 1).EntireRow.Delete

i = i - 1

End If

Next

Application.ScreenUpdating = True

End Sub

Bonjour,

Le code ressemblerait plutôt à cela pour supprimer les lignes :

Option Explicit
Public Sub delete_ligne()
Dim i As Integer

    Application.ScreenUpdating = False

    For i = 6000 To 1 Step -1
        If Cells(i, 2) < Date Or Cells(i, 2) <> 0 Then Cells(i, 1).EntireRow.Delete
    Next

End Sub
Rechercher des sujets similaires à "extraire donnees requete criteres"