Recherche sous VBA

Fermé
romain.asenjo Messages postés 11 Date d'inscription lundi 5 mars 2012 Statut Membre Dernière intervention 17 avril 2012 - 30 mars 2012 à 09:16
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 - 30 mars 2012 à 16:53
Bonjour,

je cherche de l'aide pour une VBA que je n'arrive pas à écrire.

Je voudrais faire une recherche selon plusieur critères dans une base de donnée et renvoyer dans un tableau les valeurs voulues.

Je peux fournir l'excel si besoin

Merci de votre aide


9 réponses

romain.asenjo Messages postés 11 Date d'inscription lundi 5 mars 2012 Statut Membre Dernière intervention 17 avril 2012
30 mars 2012 à 09:19
Avec le lien du fichier ca vous aidera bien mieu:

https://www.cjoint.com/?BCEjsWmY3iM
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
30 mars 2012 à 10:10
Bonjour,
Je ne pense pas que tu ai besoin de VBA pour filtrer ta feuille, suffit simplement...
Feuille Data, insérer une ligne de titre
Mette un filtre automatique.
Ca va te permettre de filtrer la feuille comme tu le montre sur Sheet2
Si vraiment tu veux en VBA fait déjà un début de code avec l'éditeur de macro.
A+
0
romain.asenjo Messages postés 11 Date d'inscription lundi 5 mars 2012 Statut Membre Dernière intervention 17 avril 2012
30 mars 2012 à 11:06
Voici un fichier plus élaboré avec un bout de code, mais ca ne fonctionne pas

https://www.cjoint.com/?BCElf3eEict
0
eriiic Messages postés 24571 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 8 mai 2024 7 216
30 mars 2012 à 11:09
Bonjour,

ta réponse à lermite a disparu...
eric
0
romain.asenjo Messages postés 11 Date d'inscription lundi 5 mars 2012 Statut Membre Dernière intervention 17 avril 2012
30 mars 2012 à 11:30
le liens pour plus de détails

https://www.cjoint.com/?BCElf3eEict
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
Modifié par lermite222 le 30/03/2012 à 12:33
Bonjour Eric,
Romain ->
J'y comprend rien...
Exécute manuellement une action complète, avec les bons filtres dans les deux fenêtres de saisies et met les résultat attendu dans la fenêtre résultat.
Ensuite reposte le classeur.

Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
0
romain.asenjo Messages postés 11 Date d'inscription lundi 5 mars 2012 Statut Membre Dernière intervention 17 avril 2012
30 mars 2012 à 13:01
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
Modifié par lermite222 le 30/03/2012 à 14:52
Pour le 1er filtre c'est plus clair.
Remplace ta Macro "Filtre1" qui ne sert à rien puisqu'une fois que les titres et cadres sont fait, plus besoin de les refaire.
Sub filtrer1()  
Dim CritA As String, CritB As String, CritD1 As Long, CritD2 As Long  
    With Sheets("Sheet1")  
        CritA = .[E11]  
        CritB = .[E21]  
        CritD1 = CDate(.[F13]) * 1  
        CritD2 = CDate(.[F17]) * 1  
    End With  
    With Sheets("Assumption").Range("A1:J32") 
        .AutoFilter Field:=2, Criteria1:=CritA  
        .AutoFilter Field:=6, Criteria1:=CritB  
        .AutoFilter Field:=9, Criteria1:= _  
            ">=" & CritD1, Operator:=xlAnd, Criteria2:="<=" & CritD2  
    End With  

End Sub

A part les filtres sur les dates qui sont un peu plus critique (dans les filtres automatique Excel inverse le mois et l'année en mode US (bug)) tu aurais pu le faire avec l'éditeur de macro.
Pour la copie des résultats dans la feuille Sheet2 fait déjà avec l'éditeur de macro et reposte pour la mise au point.
A+
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
0
romain.asenjo Messages postés 11 Date d'inscription lundi 5 mars 2012 Statut Membre Dernière intervention 17 avril 2012
30 mars 2012 à 14:59
Super j'avais pas pensé à raffraichir directement les filtres d'assumption en revanche je ne vois pas comment avec l'éditeur de macro pour rapatrier les infos dans la feuille sheet1 car dans mon exemple simple on a souvent qu'une ligne à amener mais dans le cas ou je vais devoir amener 50 ou 100 ligne, je ne vois pas comment écrire la boucle
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
30 mars 2012 à 16:53
et bien tu le fais avec une ligne et ont t'aidera pour répercuter au nombre de lignes.
0