VBA - Extract sous condition de date (mois)

Bonjour tout le monde,

J'ai comme un petit souci, je voudrais extraire des lignes d'un tableau uniquement si la date du point est égal au mois en cours.

Voici le script que j'utilise ainsi que le fichier d'exemple:

Sub TaskList()
  Dim suite As Range 'variable range
  Dim trouve As Range 'variable range
  Dim cellule As Range 'variable range
  Dim colonne1 As Range 'variable range
  Dim value1 As Range
'--------------------------------------------------------------------------------------------------------------------------
'Ref Selon le mois en cours
'--------------------------------------------------------------------------------------------------------------------------
  Set colonne1 = Sheets(1).Range(("A2"), Sheets(1).Range("A2").End(xlDown))
  'Search the value in extract tab
  For Each cellule In Sheets(1).Range("E2:BQ" & Sheets(1).Range("E65535").End(xlUp).Row)
  Set suite = Sheets(1).[G65536].End(xlUp).Offset(1, 0)
  Set trouve = colonne1.Find(cellule.Value, LookIn:=xlValues, lookat:=xlWhole)
  If cellule = Month(Date) Then
  'Write the resultat
  Sheets(1).Range("G" & Sheets(1).Range("G65535").End(xlUp).Row + 1) = Sheets(1).Cells(cellule.Row, 1)
  suite.Offset(0, 1).Formula = "=VLOOKUP(" & suite.Address & ",'" & colonne1.Parent.Name & "'!" & colonne1.Resize(, 5).Address & ",2,FALSE)"
  suite.Offset(0, 2).Formula = "=VLOOKUP(" & suite.Address & ",'" & colonne1.Parent.Name & "'!" & colonne1.Resize(, 5).Address & ",3,FALSE)"
  suite.Offset(0, 3).Formula = "=VLOOKUP(" & suite.Address & ",'" & colonne1.Parent.Name & "'!" & colonne1.Resize(, 5).Address & ",4,FALSE)"
  suite.Offset(0, 4).Formula = "=VLOOKUP(" & suite.Address & ",'" & colonne1.Parent.Name & "'!" & colonne1.Resize(, 5).Address & ",5,FALSE)"
  End If
  Next
  Set suite = Nothing
  Set trouve = Nothing
  Set cellule = Nothing
  Set colonne1 = Nothing
End Sub

En vous remerciant d'avance

Bonjour Nunos.

Je te propose une solution différente, sans recherche.

Boucle des lignes et vérifie à chaque fois le mois et année de la colonne D.

Sub extractionDate()
Dim i&, j&

With Sheets("Feuil1")
    'Enregistrement de la première ligne vide en colonne G.
    j = .[G1048576].End(xlUp).Row + 1
    'Placement sur la seconde ligne.
    i = 2
    'Boucle tant qu'il existe une valeur en A.
    Do While .Cells(i, "A").Value <> ""
        'Vérifie si le mois et l'année en colonne D correspondent au mois et année en cours.
        If Month(.Cells(i, "D").Value) = Month(Date) And Year(.Cells(i, "D").Value) = Year(Date) Then
            'Si c'est le cas copie de la ligne.
            .Range(.Cells(i, "A"), .Cells(i, "E")).Copy .Cells(j, "G")
            j = j + 1
        End If
        i = i + 1
    Loop
End With

Bonjour

Tu as des dates dans 2 colonnes : la colonne Pt Open et la colonne Pt Closed

Est-ce que tu veux extraire les lignes dont

• La première date est une date du mois en cours ?

• La deuxième date est du mois en cours ?

• Les deux dates sont du mois en cours ?

Bye !

Bonjour à vous,

Merci pour votre aide, c'est sur uniquement la date close qui m'intéresse ^^


thebenoit59, c'est nickel

Merci beaucoup pour ta lumière


thebenoit59, c'est nickel

Merci beaucoup pour ta lumière

Rechercher des sujets similaires à "vba extract condition date mois"