Bonsoir,
Désolé de répondre tardivement.
Je vois que le sujet a passionné certains et proposé des solutions de recherche qui me laisse perplexe, mais je vais analyser et si je peux les appliquer ....
dysorthographie : l'extraction de la base de données Oracle et de par la construction de celle-ci par l'éditeur, me permet d'obtenir la liste des "propriétés" "classe" ou "sous-classe" "équipement" et sa valeur triés et sans doublons (contrainte oracle). Il y a quinze ans c'était oracle 7 voir 8, depuis c'est la version 12, et notre base est en 10, mais ça a bien évolué , mais les concepts sont restés.
D'autre part mon programme permet de choisir le domaine de l'équipement, sa famille (classe) et sa sous-famille (sous-classe), de là je construis mes requêtes SQL pour interroger la base.
Chaque classe peut-être associé à plusieurs propriétés( quelques unes à plus de cent) et des propriétés sont générales à toutes les équipements.
Chaque propriété peut être une valeur alphabétique, numérique ou date, une liste de valeur, ou les données d'une autre table ..... et d'autres possibilités mais je ne rentre pas dans le détail.
Dans un domaine d'équipement, plusieurs classes peuvent être utilisées, chacune ayant des propriétés communes et différentes (je sais, s'arrange pas les choses ! mais une bonne requête si ).
Fort de tout cela, je me retrouve avec des tableaux EXCEL dont je dois extraire les données pour les afficher en tableau avec toutes les particularités citées et d'autres en plus, chaque équipement a ces propres informations, en plus de ces propriétés techniques.
Pourquoi j'utilise la dichotomie et non Find, ce dernier est bien et rapide .... jusqu'à 3, 4 voire 8000 enregistrement au delà il perd son intérêt. Je l'utilise dans d'autres programme du même acabit.
Etant donné que je ne sais pas quelle interrogation va faire l'utilisateur, large ou restreinte, il peut ramener quelques centaines d'enregistrements à plusieurs dizaines de millier voire centaines.
La dichotomie reste la plus intéressante.Après il peut exister des approches plus rapide, j'en conviens.
Je n'ai pas encore tout compris sur Dictionary mais ça m'ouvre une porte de réflexion, tout comme collection d'ailleurs..
Tout comme je n'ai peut-être pas utilisé toutes les astuces du VBA. J'ai des lacunes mais je me soigne.
L'origine de ce post était cet bizarrerie du tri qui me donnait un faux résultat ! mais que d'échanges.
Cordialement Jean-Luc
Partager