Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 Amélioration du temps d'exécution d'une recherche à plusieurs critères

asta29

XLDnaute Nouveau
Bonjour à tous,

Je tente en vain de réussir en VBA le résultat indiqué ci-dessous:

Avec cette formule en B2 de la feuil2 je parviens au résultat attendu,: {=INDEX(Feuil1!C2:C6;EQUIV(A2&"ok";Feuil1!A2:A6&Feuil1!B2:B6;0))}
Cependant ce fichier contient environ 4000 lignes et la répétition des formules ralentissent énormément le calcul.

Feuil2: Feuil 1:


Je cherche à optimiser ces calculs en VBA mais je n'y parviens pas.

Merci d'avance pour votre aide.
Ci-joint un fichier d'exemple.

Asta29
 

Pièces jointes

  • Classeur1.xlsx
    64 KB · Affichages: 17

JHA

XLDnaute Barbatruc
Bonjour à tous,

Pourquoi ne pas faire un filtre et choisir les "OK"
puis sélection du filtre et copier sur une autre feuille puis supprimer la colonne "B"

JHA
 

Pièces jointes

  • Classeur1 (6).xlsx
    63.8 KB · Affichages: 2

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Dans le fichier joint vous verrez 2 solutions :
1 - par power query (requête)
2 - par filtrage avancé (macro)


Hello JHA
Cordialement
 

Pièces jointes

  • asta29.xlsm
    80.3 KB · Affichages: 5

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Voilà qui est fait par power query dans le fichier joint.

[Edition] J'ai rechargé le fichier qui contient maintenant 2 façons de faire par powerquery :

1- par ajout de colonnes
2- par pivotage d'une colonne.

Cordialement
 

Pièces jointes

  • asta29.xlsm
    76.2 KB · Affichages: 11
Dernière édition:

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Bonjour,

Avec une fonction perso.
Doit être instantané

=Rechv2Crit(A2:A6; Feuil1!A2:A6; Feuil1!B2:B6; Feuil1!C2:C6; "x")

Boisgontier
 

Pièces jointes

  • Copie de Classeur1.xlsm
    72.6 KB · Affichages: 5

asta29

XLDnaute Nouveau
Bonjour,

Après adaptation de la requête Power Query, je viens de me rendre compte qu'il peut y avoir des doublons en colonne A


J'essaye en vain de regrouper ou de supprimer les doublons, de la colonne A, de fusionner les colonnes...mais je perds une partie des données...

Merci pour votre aide.
Asta29
 

Pièces jointes

  • asta29 (4).xlsm
    21.3 KB · Affichages: 2

Hasco

XLDnaute Barbatruc
Repose en paix
Re,

Mais c'est plus direct par pivotage qu'ajouter des colonnes manuellement après regroupement (voir fichier joint)

Cordialement
 

Pièces jointes

  • asta29 (4).xlsm
    26.2 KB · Affichages: 7
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…