Récuperer des données selon un ou plusieurs critères

Bonjour à tous

J'espère que tous, vous allez bien. Comme vous le constaterez à travers mon pseudo, je suis débutante en macro ( mais bien décidée à m'améliorer à travers les cours sur ce site}. Merci pour les cours proposés sur le site, ça m'aidera énormement. En attendant, j'aimerais me faciliter la tâche au bureau par rapport à certains rapport à travers un exemple du fichier ci joint.

Ainsi sur mon fichier, je souhaiterais que sur la derniere feuille(feuille destination), à l'exécution de la macro, seulement les ID dont le statut est OK apparaissent avec leurs informations respectives dans la feuille destination.

Merci pour l'aide

Cordialement

16a-envoyer-1.xlsx (10.62 Ko)

Bonjour,

Une proposition

A+

52a-envoyer-1.xlsm (22.27 Ko)

Bonjour,

Essaye le code suivant :

Sub conso()
    For Each feuille In Worksheets
        If feuille.Name <> ActiveSheet.Name Then
            derLig = feuille.Range("A" & Rows.Count).End(xlUp).Row
            For i = 2 To derLig
                If feuille.Cells(i, 5) = "OK" Then
                    j = Range("A" & Rows.Count).End(xlUp).Row
                    feuille.Range("B" & i & ",D" & i & ",E" & i).Copy Destination:=Range("A" & j + 1)
                End If
            Next i
        End If
    Next feuille
End Sub
frangy a écrit :

Bonjour,

Une proposition

A+

Ok j'essaie et vous revient

Merci


Raja a écrit :

Bonjour,

Essaye le code suivant :

Sub conso()
    For Each feuille In Worksheets
        If feuille.Name <> ActiveSheet.Name Then
            derLig = feuille.Range("A" & Rows.Count).End(xlUp).Row
            For i = 2 To derLig
                If feuille.Cells(i, 5) = "OK" Then
                    j = Range("A" & Rows.Count).End(xlUp).Row
                    feuille.Range("B" & i & ",D" & i & ",E" & i).Copy Destination:=Range("A" & j + 1)
                End If
            Next i
        End If
    Next feuille
End Sub

Ok j'essaie et vous revient.

Merci

Raja et Frangy, vos deux codes marchent super bien dans mon exemple mais quand j'essaie de les adapter à plus grande échelle avec mes donnees proprement dites, je ne m'en sors pas. S'il vous plait, voudriez-vous bien m'expliquer chaque ligne de vos codes respectifs.

Merci bien

Code commenté :

Sub Recap()
Dim Ws As Worksheet
Dim Cel As Range
Dim Ligne As Long
    'Ligne de début d'enregistrement dans la feuille Récap.
    Ligne = 2
    'Feuille qui contient l'état récapitulatif
    With Worksheets("Recap")
        'Effacement des données de l'état récapitulatif
        .Range("A2:C2").Resize(.Range("A1").End(xlDown).Row - 1).ClearContents
        'Balayage de toutes les feuilles, à l'exception de la feuille qui contient l'état récapitulatif
        For Each Ws In Worksheets
            If Ws.Name <> .Name Then
                'Balayage de toutes les lignes renseignées dans chaque feuille journalière
                For Each Cel In Ws.Range("A2:A" & Ws.Range("A" & Rows.Count).End(xlUp).Row)
                    'Si la cellule Statut contient "OK" on effectue la copie des données utiles.
                    If Cel.Offset(, 4) = "OK" Then
                        .Range("A" & Ligne) = Cel.Offset(, 1) 'Type
                        .Range("B" & Ligne) = Cel.Offset(, 3) 'Date
                        .Range("C" & Ligne) = Cel.Offset(, 4)  'Statut
                        Ligne = Ligne + 1
                    End If
                Next Cel
            End If
        Next Ws
    End With
End Sub

A+

Merci frangy. Je reviens plus tard

Dis frangy, sil te plait, le bouton recapitulatif, tu l'associes comment au code.

Merci

Clic droit sur le bouton puis ...

Affecter une macro.

A+

Ok merci

Frangy, je n'y arrive toujours pas et pourtant je pense avoir faire les modifications nécessaires. Serait-ce parce que les donnees sources sont en fait des tableaux dynamiques journaliuers? Mais je réfléchis toujours, je finirai par savoir où ça cloche.

Merci

Pour me permettre de répondre, je ne vois que 2 solutions :

1) tu joins un fichier représentatif du fichier incriminé,

2) tu me fais cadeau d'une boule de cristal.

A toi de choisir

A+

Ok laisse moi réfléchir toute la soirée, et je te reviens demain.

Bonne soirée

Rechercher des sujets similaires à "recuperer donnees criteres"