Moteur de recherche multicritères

Merci pour ce retour.

Le fichier de cousin Hub est vraiment bien et correspond à ce que je souhaite proposer aux utilisateurs.

Néanmoins une bonne amélioration serait d'avoir des formulaires à la place des listes déroulantes (pour empêcher l'écriture d'un quelconque texte).

Mais je ne sais pas si "formulaire" et "Power Querty" sont compatibles ?

Désolé mon niveau est vraiment ras des pâquerettes. J'espère que ma demande est compréhensible

re,

contrairement à Cousinhub, je préfère VBA mais je ne connais pas bien PQ et un userform n'a pas de valeur ajoutée, je suppose, donc cela s'arrête ici pour moi.

D'accord merci pour votre aide en tout cas :)

Il me semble quand même qu'il y a une plus value. Certains futures utilisateurs ne sont vraiment pas doués avec l'informatique et je les imagine très bien essaye de cliquer un peu partout sans sans rendre compte.

Sur le fichier de cousinhub et même avec le code de PartrickT on peut réussir à écrire dans la cellule et j'imagine qu'ils tapent sans faire exprès et qu'ils ne parviennent pas à supprimer le texte pour ensuite avoir accès à la liste déroulante...

Bonjour,

Je plussoie aux arguments de Bart...

Rajouter un USF ne ferait qu'ajouter des contraintes de développement. (Il faudrait notamment insérer des instruction d'utilisation, lesquelles pouvant très bien être inscrites dans l'onglet de recherche)

Je pense plutôt qu'une bonne formation, ainsi qu'une prise en main personnelle, seraient bien plus profitables.

Il faut savoir responsabiliser les utilisateurs...

Donc, pour un USF, ce sera également sans moi, désolé

Bon courage

D'accord merci pour votre retour que je vais prendre en compte et en discuter avec mes collègues.

Plus de 1000 personnes pourraient avoir à l'utiliser donc une formation personnelle est possible mais mérite de déployer quelques moyens.

Je vous suis très reconnaissant pour le temps passer sur le fichier et pour vos recommandations :)

Bonsoir,

Encore merci pour votre aide qui m’a permis d’aboutir à ce fichier :

Le code est différent car sauf erreur il y avait un léger bug dans le fichier de cousinhub. Le problème était qu’à l’ouverture si l’utilisateur est très rapide pour lancer une recherche alors le tableau se remplit bien mais les liens hypertexts ne suivent pas.

Aujourd’hui je suis très content du fichier qui semble marcher correctement.

Je me permets de vous solliciter une dernière fois pour savoir s’il est possible d’un peu mieux « verrouiller » le fichier. Outre les feuilles masquées est-il possible d’empêcher la modif de toutes les cases qui ne servent pas au code ?

Je pense aux entêtes de tableau, à la consigne (cellule A2), au titre (A1), aux boutons « suppr » et « supprimer tous les critères » mais aussi à toutes les cellules blanches autours.

Merci pour votre aide !

A dispo si besoin de clarifier ma demande qui je l’espère vous semblera légitime pour terminer ce petit applicatif comme il faut 😊

Bonjour,

J'ai regardé vite fait tes nouveaux codes...

Que dire...

- L'utilisation des On Error doit rester exceptionnelle, et ne concerner qu'une erreur prévisible, voire "voulue". Si un code est bien construit, avec les précautions d'usage, cette fonctionnalité n'a pas lieu d'être.

- Pour insérer les liens hypertextes, je ne vois pas du tout pourquoi tu as modifié le code originel, notamment les multiples .Hyperlinks.Count, notamment ce passage :

...
If C.Hyperlinks.Count = 1 Then
                ' Si un lien existe déjà dans Cel, ne rien faire
                If Cel.Hyperlinks.Count = 0 Then
                    ' Ajouter un hyperlien si Cel n'en a pas déjà
                    Cel.Hyperlinks.Add Anchor:=Cel, Address:=C.Hyperlinks(1).Address
...

Si le contenu de la cellule testée (Cel) contient déjà un lien, ne rien faire... Tu es sûr que ce lien existant pointe bien vers le bon fichier?

- Dans le code de feuille, pourquoi provoquer une requête à chaque changement de critères?
Une recherche une fois tous les critères définis n'est-elle pas préférable?

Bref, je n'ai pas tout regardé, mais déjà, quelques précisions quant à ces trois premiers points, stp...

Bonjour consinhub, la plupart des modifications effectués grâce à chat GPT surement la raison pour laquelle ça te semble peut-être mal écrit est pour solutionner l'erreur évoqué précédemment.

-En complétant le BDD (avec environ 600 lignes) et si on lançait une recherche dès l'ouverture du fichier (dans les 5s secondes) alors le tableau de résultat se complétait bien mais sans les liens. Les liens pointent bien vers le bon fichier.

-Provoquer une requête à chaque changement de critère n'est pas obligatoire mais de l'avis des testeurs cela leur convient bien. Le fichier est donc un peu plus fluide :)

J'espère que mes précisions t'aiderons.

J'ai bossé sur le fichier avec mon collègue beaucoup plus doué en informatique et nous avons réussi à verrouiller les cases en laissant la macro tourner par contre à l'ouverture du fichier le message classique d'Excel :

« La cellule ou le graphique que vous essayez de modifier se trouve sur une feuille protégée. Pour apporter une modification à celui-ci, vous devez ôter la protection de la feuille. Vous serez peut-être invité à entrer un mot de passe. »

Ce qui bien sûr est faux puisque les listes déroulantes restent sélectionnables.. Nous essayons de le retirer.

Voici le fichier :

19essais-test.xlsm (85.55 Ko)

Le mot de passe est TEST

Re-,

Ah, le félin flatulent...

Je regarde ton dernier fichier, y apporte (peut-être) quelques modifications (déjà un gros retour aux origines, et aux basiques), y regarde cette histoire de protection, ainsi que l'ouverture du fichier.

@+

je ne l'avais jamais entendu celle-là

Merci !

Re-,

Ah, si, j'ai une nouvelle interrogation...

C'est quoi, cette histoire de "Done"?

Tu peux m'expliquer le but?

C'est toujours à cause des hyperliens qui ne s'affichaient pas si on clique trop vite à l'ouverture du fichier.

Ca permet de vérifier que l'actualisation des données est terminées.

Power Query va écrire "oui" sur la feuille done en toute fin d'exécution.

Dans la macro tant que "oui" n'est pas encore écrit alors la macro continue de boucler jusqu'à ce que PQ ait écrit son "oui" et donc fini de charger les hyperliens !

autrement dit : Si done <> Oui alors boucle si done = Oui continuer recherche (afin que les recherches effectuées avant le traitement des données ne plantent pas)

Re-,

Ok

Alors, j'ai (pratiquement) tout revu.

A l'ouverture du fichier, un RAZ est effectué -> pendant la mise à jour, on ne peut rien faire, ce qui évite le recours à "Done"

Regarde le code, simplifié et (je pense) optimisé

Si ça peut aller????

Bluffant ! C'est parfait et ça correspond exactement à ma demande..

Je vais continuer à le tester mais pour l'instant aucun bug détecté...

Merci beaucoup !!

Bonjour,

Le fichier a été présenté et à beaucoup plu. Pour cela un grand merci.

Lors de l’utilisation je me suis aperçu que le résultat de la recherche pouvait afficher deux fois le même résultat et cela assez logiquement.

En effet, il est parfois possible pour quelques essais de créer deux lignes (ou plus) dans la BDD afin de le « classer » dans deux (ou plus) thématiques différentes.

Dans le fichier joint c’est le cas pour l’essai : « R103-Irrigation blé » qui est à la fois classé dans la thématique « irrigation » et « gestion ravageurs ».

Le problème est quand je sélectionne par exemple les essais de la campagne 2023-2024 alors l’essai apparaît deux fois dans les résultats.

Est-il possible de l’éviter ? Par exemple en codant l’instruction effacer les doublons à la fin sur le tableau de résultat ?

Merci pour votre aide,

A dispo pour toutes précisions (PS mdp du fichier = TEST)

14essais-test.xlsm (81.45 Ko)

Bonjour,

Eh ben, tu vas le faire....

Tu enlèves le mdp de l'onglet, puis tu sélectionnes une cellule de la requête (la cellule B9, par exemple)

En haut, tu as de nouveaux rubans (Création de tableaux et Requête)

Tu cliques sur "Requête", puis sur "Modifier" (premier choix, à gauche)

L’Éditeur PQ s'ouvre. Tu sélectionnes la requête "T_Final" (à gauche, et si tu ne vois pas les requêtes, tu développes en cliquant sur la flèche droite)

image

Puis, tu sélectionnes l'étape "Suite" à droite, dans les "Étapes Appliquées"

Si tu n'as pas la barre de formules, tu vas dans le ruban "Affichage", et tu valides cet affichage

image

Tu développes la barre de formule afin de "presque" tout voir

Tu rajoutes Table.Distinct( --> n'oublie pas l'apostrophe ouvrante ainsi que la fermante en jaune

comme ceci :

Fusion = Table.Distinct(Table.NestedJoin(FiltreAns, ColsCrit, T_Crit, ColsCrit, "T_Crit", JoinKind.RightOuter)[[Campagne],[#"L'essai"]])
image

Puis tu cliques sur "Fermer et charger"

Et voilou

Bon courage

Merci beaucoup,

Je pense avoir réussi grâce à ton tuto très bien expliqué.

Plutôt que "rajouter" la "formule" Table.distinct j'ai remplacé en copiant ta formule en lieu et place de ce qu'il y avait déjà écrit après table.distinct.

Je pense avoir bien fait car ça fonctionne. Est ce bien cela :) ?

Re-,

Pas de soucis, si tu as bien copié toute le code proposé dans le tuto à l'endroit ad-hoc.

Et si ça fonctionne, c'est bien le but... PQ est très sensible à la casse, donc s'il y avait eu une erreur, tu aurais eu le droit à un superbe

Ahah génial c'est de la mécanique de précision ;)

Et bien impec alors encore merci pour ton aide. J'en ai pas mal appris sur PQ ces dernier temps mais je me rends compte du temps nécessaire pour bien appréhender les innombrables possibilités d'Excel. En plus quand on ne le manipule pas tout les jours c'est vraiment dur de continuer à s'en rappeler

Rechercher des sujets similaires à "moteur recherche multicriteres"