Extraire des données selon critères

alain18

XLDnaute Occasionnel
Bonjour à tous,
Je viens vers vous car je souhaiterais effectuer des extractions de données sur une autre feuille d'un même fichier probablement en mode VBA selon certains critères.
Pour faire cette manip je ne dois pas travailler sur la feuille de données, celle-ci venant se mettre à jour régulièrement avec toujours plus de nouveau noms (45000 actuellement) et dans le format présenté dans l'exemple joint.
Je joins un fichier très raccourci pour faire les tests.
Les critères sont précisés en "Feuil2" là où doit ètre réalisé l'extraction.
Merci de vos conseils.
 

Pièces jointes

  • Filtrer1.xlsx
    16.1 KB · Affichages: 132
  • Filtrer1.xlsx
    16.1 KB · Affichages: 145
  • Filtrer1.xlsx
    16.1 KB · Affichages: 147

Celeda

XLDnaute Barbatruc
Re : Extraire des données selon critères

Bonjour,


Code:
probablement en mode VBA

ben moi je choisis en mode TCD dans un premier temps,

Ici, j'ai groupé les dates par années, j'ai tout placé dans le filtre du rapport ainsi que le departement.
Si cette solution te convient, il conviendra de l'automatiser dans un deuxième temps....
 

Pièces jointes

  • TCDEXTRACTION.xls
    56.5 KB · Affichages: 120

alain18

XLDnaute Occasionnel
Re : Extraire des données selon critères

Bonjour Celeda,
Merci d'avoir regardé mon pb. Avec cette méthode, j'ai le plaisir d'apprendre à utiliser les TCD. C'est une "autre" partie d'Excel que je ne maîtrise absolument pas. Mais il faut rester positif, avec cet exemple je suis obligé de regarder de plus près.
C'est peut ètre une solution mais il reste sans doute encore bien des choses à programmer pour par exemple sélectionner la liste des gens nés avant 1975 ou autre, sans ètre obliger de sélectionner les années une par une dans la liste déroulante du TCD.
Pour ma part je n'ai pas la solution pour automatiser.
En attendant une éventuelle réponse en VBA, je vais poursuivre ma découverte des "fameux" TCD. J'applique plutôt les formules mais dans mon cas avec 45000 lignes à traiter je ne crois pas que c'est la meilleur solution.
Merci de ton aide et si il est possible d'automatiser, je suis preneur...
Cordialement.
 

R@chid

XLDnaute Barbatruc
Re : Extraire des données selon critères

Salut,
avec formule matricielle :
Code:
=SIERREUR(INDEX(Feuil1!$C$2:$C$38;PETITE.VALEUR(SI((Feuil1!$B$2:$B$38=$I$3)*(ANNEE(Feuil1!$F$2:$F$38)<=$I$1);LIGNE(INDIRECT("1:"&LIGNES(Feuil1!$C$2:$C$38))));LIGNES($1:1)));"")
@ valider par Ctrl+Maj+Entrée
@ recopier vers le bas
@ +
@ Rachid
 

chris

XLDnaute Barbatruc
Re : Extraire des données selon critères

Bonjour
...pour par exemple sélectionner la liste des gens nés avant 1975 ou autre, sans ètre obliger de sélectionner les années une par une dans la liste déroulante du TCD...

Il y a, dans la liste filtres chronologiques avec plein d'autre mode de sélection rapide et notamment Avant où on peut ensuite taper ou sélectionner 1/1/75
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : Extraire des données selon critères

Bonjour,

Voir PJ

Code:
Sub extrait()
    Sheets("Feuil1").Range("A1:F1000").AdvancedFilter Action:=xlFilterCopy, _
        CriteriaRange:=Range("j1:k2"), CopyToRange:=Range("A1:F1")
End Sub

JB
 

Pièces jointes

  • Copie de Filtrer1.xls
    51.5 KB · Affichages: 139

homepyrof53

XLDnaute Occasionnel
Re : Extraire des données selon critères

Bonsoir,

macro :
Code:
Sub Macro5()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
annee = Range("z_date")
dep = Format(Range("z_dep"), "000")
l = 2
With Sheets("Feuil1")
    While .Cells(l, 2) <> ""
        If .Cells(l, 2) = dep And Year(.Cells(l, 6)) < annee Then
            l2 = l2 + 1
            x1 = Replace(Range(Cells(l, 1), Cells(l, 6)).Address, "$", "")
            x2 = Replace(Worksheets("feuil4").Cells(l2, 17).Address, "$", "")
            Worksheets("feuil1").Range(x1).Copy Destination:=Worksheets("feuil2").Range(x2)
        End If
        l = l + 1
    Wend
End With
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub
 

alain18

XLDnaute Occasionnel
Re : Extraire des données selon critères

Bonsoir à tous,
Je vous remercie d'avoir regarder mon problème avec diverses propositions. Elle vont me permettre de faire différents essais. J'avoue que même si pour moi le VBA n'est réalisé qu'avec l'enregistreur de macro compte tenu de mes connaissances, cette solution est certainement la plus adaptée.
Maintenant à moi de comprendre car 3 macros différentes pour un même résultat c'est très bien mais l'élève va souffrir....!!
Je regarde tout ça sur mon grand fichier de 48000 lignes maintenant et je reviens vers vous si je coince...
Merci à tous,
Alain
 

R@chid

XLDnaute Barbatruc
Re : Extraire des données selon critères

Salut tout le monde,
il y des nombres stokés en format texte il faut les convertir en nombre.
@ +
Rachid
 

Pièces jointes

  • Filtrer1.xlsx
    16.8 KB · Affichages: 93
  • Filtrer1.xlsx
    16.8 KB · Affichages: 109
  • Filtrer1.xlsx
    16.8 KB · Affichages: 115

Discussions similaires

Statistiques des forums

Discussions
312 271
Messages
2 086 687
Membres
103 371
dernier inscrit
jade.gerbe14