XL 2016 Extraction de données avec formule matricielle et tri

Tef_31

XLDnaute Nouveau
Bonjour à tous,

J’aurai besoin de votre aide sur un problème d’extraction de données assez complexe pour moi.
Je cherche à extraire des données d’un tableau avec certains critères. J’ai joint le fichier pour comprendre plus facilement.

Le tableau 1 est la base de données.
Le tableau 2 est celui ou je souhaite extraire mes données.

Ce que j’ai réussi à faire jusqu’à maintenant :
  • Extraire les références d’assurance uniques (colonne assurance)
  • Déterminer le nombre de fois où apparait l’assurance dont la date de réception est située entre la valeur de la cellule H4 et la valeur de la cellule I4.
Je passe par des formules matricielles car j’ai besoin que le tableau soit dynamique (les dates seront dynamiques via une zone de liste).

Je que je souhaiterai faire :
  • Extraire uniquement les données non vides (dans la colonne assurance) et adapter automatiquement la taille du tableau.
  • Réaliser un tri décroissant par quantité
Cela est possible en passant par une requête Power Query mais je ne sais pas rendre cette requête dynamique, c’est pourquoi je fais appel à vous pour essayer de passer par une ou plusieurs formules.

Je travaille sous Excel 2016 et je n’ai pas accès aux nouvelles fonctions (UNIQUE ou TRIER)

Merci d’avance pour votre aide.
Stéphane
 

Pièces jointes

  • Tableau.xlsx
    41.4 KB · Affichages: 20
Solution
RE

Oui on peut rafraichir une seule requête. Voir Ci-joint

J'ai ajouté les chaînes vides dans le filtre (je n'avais filtré que null)

Edit : on a, je pense, intérêt à intervertir les 2 filtres, la date prenant plus de temps que d'éliminer les chaînes vides ou null

Tef_31

XLDnaute Nouveau
Re tout le monde,

Merci à tous les deux pour vos propositions qui fonctionnent très bien.
Je me débrouille un petit peu en vba mais là clairement j'aurais mis plusieurs heures (voire journées) pour arriver à ce résultat.
Je n'ai jamais utilisé les objets "scripting.dictionary". Ca fonctionne comme une variable tableau j'ai l'impression (avec des méthodes qui simplifient la vie comme ".keys" ou ".items")?

En tout cas un grand merci à vous deux pour votre aide.
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re,

Je n'ai jamais utilisé les objets "scripting.dictionary". Ca fonctionne comme une variable tableau j'ai l'impression (avec des méthodes qui simplifient la vie comme ".keys" ou ".items")?
Un objet dictionary associe à une clef key un élément (item). Ce n'est pas un tableau.
Si la clef est généralement du texte, l'élément peut-être pratiquement n’importe quoi: un nombre, un texte, un tableau, un range, un autre dictionary, ...
Une clef est unique. dictionary permet donc de repérer des doublons.
L'avantage du dictionary est sa rapidité à trouver un élément à partir de sa clef.
Son inconvénient principal est que cette structure n'est pas disponible sous MAC.

Voir quelques exemples d'utilisation chez Boisgontier : ICI
 
Dernière édition:
Haut Bas