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

OutIdx. Macro complémentaire, modules de classe et indexation

Dranreb

XLDnaute Barbatruc
Re : OutIdx. Macro complémentaire, modules de classe et indexation

Bonjour.
Un plantage sur les fonctions aussi courantes que Left$ ou Mid$ est généralement dû à une RÉFÉRENCE MANQUANTE.
Je crie pas, c'est écrit comme ça dans les référence. Et il suffit en général de commencer par la décocher.

Pour la casse, tant pis, je disais de sélectionner un des aliments, pas de le taper, ce n'est pas un ComboBox.

L'argument 1 de cette fonction est pour l'instant un numéro d'ordre du dictionnaire qu'on veut créer. Parce qu'on pourrait en vouloir plusieurs par feuille. Je rechigne à l'identifier en fonction des adresses de plages qui devraient le constituer. Me paraît trop pénalisant. Et décider de n'en permettre qu'un seul par feuille ne me plait pas non plus. Il y a bien l'encadré : "Fabrique le 1er dictionnaire et renvoie son identification" qui devait suffire à expliquer le rôle du 1er paramètre, mais bon…
Je reste ouvert à toute proposition de règle à ce sujet.

Oui, l'encadré en J à été victime d'un plantage Excel, et je n'ai pas retrouvé le texte original qui devait le terminer.
J'en ai mis un autre.

Corrigé aussi un bug dans le contrôle des liens Excel avec OutIdx. Il ne faut pas se faire d'illusion. Le débogage de tout ça est loin d'être terminé, même s'il ne concerne qu'un tas de petits détails.

Cordialement.
 

fhoest

XLDnaute Accro
Re : OutIdx. Macro complémentaire, modules de classe et indexation

Bonjour,
Je n'ai qu'un mot à dire:
La classe Dranreb ça c'est du solide
Bravo et merci plus qu'a essayer de piger !! merci pour mes ptit neuronnes
A+
 

Dranreb

XLDnaute Barbatruc
Re : OutIdx. Macro complémentaire, modules de classe et indexation

Bonjour à tous.
Je demande à tous ceux qui ont (auront) compris me disent ce qu'ils auraient aimé trouvé plutôt pour rendre, coté utilisation, leur compréhension plus rapide. Parce que je ne peux pas m'imaginer complètement à votre place du fait qu'à le concevoir, j'ai en quelque sorte eu une démarche inverse de celle qu'auront ceux qui seront amenés à l'utiliser, connaissant d'avance les capacités que je voulais lui conférer.

Le texte suivant en caractères un peu plus petits dans l'encadré apporterait-il quelque chose en annonçant mieux la couleur ?

Dans son architecture globale, il s'articule autour d'un système général d'indexation qui est un module de classe définissant un objet TableIndex.
Ce module de classe est utilisé par 2 modules ordinaires: MDictionnArbo qui fabrique des dictionnaires arborescents, et MRécapituler pour des listes à un seul critère.
Les dictionnaires arborescent sont à leur tour utilisés par un module de classe ComboBoxCasc qui gère automatiquement les ComboBox en Cascade.

Cordialement.
 

Dranreb

XLDnaute Barbatruc
Re : OutIdx. Macro complémentaire, modules de classe et indexation

Bonjour à tous.

Je suis très déçu du manque de participation des lecteurs d'XLD.
Plus de 2000 personnes ont vu cette discussion.
Si même seul 10% d'entre eux (ce qui me parait pessimiste) ont vu l'intérêt de certains bouts de code…
Si même seul 1% d'entre eux (ce qui me parait pessimiste) on reconnu la simplicité qu'il apporte dans la programmation des userform de gestion et dans les restitutions d'informations par formules simples de recherches sophistiquées…
Ça fait quand même 200 personnes qui utilisent ma classe TableIndex ou quelques autres gadgets,
et 20 personnes qui l'ont adopté comme classeur de macro complémentaire.

Et aucun retour, aucun témoignage, aucun remerciement, aucune nouvelle anecdotique de tout cela, de l'usage qui en est fait, qui me ferait plaisir.

Je n'ai pu me résoudre à supprimer le module de classe ComboBoxLiés qui permet de faire la même chose que ComboBoxCasc mais avec des choix en ordre quelconque. Je l'ai entièrement réécrit sur une base un peu plus saine qui n'implique plus des recalculs à tout instant de dictionnaires arborescents complets à partir des données de la feuille base. Il conserve certes des temps de réponse plus long, mais raisonnables, proportionnels au nombre de critères, donc de ComboBox. Il permet de réaliser facilement des userform personnalisés aux même possibilités que le Données,Formulaire… d'Excel 2003.
Cette nouvelle mouture comporte certainement aussi diverses petites améliorations de tout le reste.

Mais cette fois, je ne livrerai cette nouvelle version que contre un jeu de donnée intéressant (avec des vrais mots et noms, pas des ghjkl, 1,2,3,4 et autres aaaaa) digne de figurer dans le DémoOutIdx. Il doit s'agir d'une liste mélangée à mettre à jour, dont chaque ligne appartient à un groupe virtuel identifié par 3 à 5 éléments, assez étrangers l'un à l'autre pour avoir besoin de les cerner par un 1er choisi, très différent d'une fois à l'autre. Un exemple type serait une liste d'ouvrages (littéraires ou autres) par auteur, genre, thème etc.
Un truc que tout le monde pourrait avoir envie d'adopter et compléter selon ses propres goûts et expériences.

À bon entendeur salut.
 

Victor21

XLDnaute Barbatruc
Re : OutIdx. Macro complémentaire, modules de classe et indexation

Bonjour, Bernard.

Mon niveau ne me permet pas (pas encore ?) d'apprécier l'énorme travail que tu as réalisé, mais puisque tu demandes des exemples, je joins ici une petite base de données, extraite d'un fichier sur lequel j'avais travaillé concernant la classification des espèces.
Il est la compilation de plusieurs sources Web, est très loin d'être exhaustif, et peut comporter des erreurs, mais si tu penses qu'il peut servir à tes démonstrations, n'hésite pas : il est libre de droits
 

Pièces jointes

  • Classif.xlsx
    359.4 KB · Affichages: 229

JCGL

XLDnaute Barbatruc
Re : OutIdx. Macro complémentaire, modules de classe et indexation

Bonjour à tous,

Bernard : Je n'ai toujours pas compris la finalité de ton fichier...

Je te joins donc une Base connue : les discussions (une partie) sur XLD.

A + à tous
 

Pièces jointes

  • Base XLD.xlsx
    925 KB · Affichages: 1 452

Dranreb

XLDnaute Barbatruc
Re : OutIdx. Macro complémentaire, modules de classe et indexation

Merci Victor21 pour ta proposition rapide.
Je m'en servirai probablement pour une seconde démo de ComboBoxCasc ou de dictionnaires arborescents, peut être dans un classeur séparé, car c'est de tout évidence une collection en arborescence structurée et non à caractéristiques indépendantes.
Quel dommage que je n'en ai pas disposé plus tôt. Ç'aurait été d'un niveau plus élevé qu'une salade de mots dans une fable de La Fontaine ou une manière d’accommoder les choux-fleurs selon les goûts d'on ne sait qui !
Encore merci en tout cas.

Merci à toi aussi JCGL. Proposez, proposez. Il y a bien quelque chose qui va finir par m'inspirer ! Là je crois qu'il y a trop de données spécifiques n'étant pas des caractéristiques partagées par plusieurs éléments de l'ensemble. C'est vrai par ailleurs que l'on peut douter du caractère utile de fonctionnalités déjà offertes par Excel par le filtre personnalisé et par le formulaire standard. Mais les demandes vont pourtant souvent dans le sens de réalisations personnalisées selon ces possibilités là. Dans le cadre de gestions précises, stock ou autres.

Cordialement.
 
Dernière édition:

R@chid

XLDnaute Barbatruc
Supporter XLD
Re : OutIdx. Macro complémentaire, modules de classe et indexation

Bonjour @ tous,
Salut Dranreb,
je suis passé par la un jour, mais le prob c'est que je ne comprends rien en VBA,
j'en profite aussi pour saluer JCGL, qui suit bien les discussions...
Amicalement
 

Dranreb

XLDnaute Barbatruc
Re : OutIdx. Macro complémentaire, modules de classe et indexation

Bonjour R@chid.
je suis passé par la un jour, mais le prob c'est que je ne comprends rien en VBA
Rien ? mais vraiment RIEN ? M'étonne quand même un peu. Pas possible. Subjectif ça. Même pas ce que tu aurais peut être dans ton cas à assimiler en premier: les fonctions ? Il est vrai qu'avec ce que tu arrive à tirer des formules, le VBA peut te sembler une haute montagne dont l'ascension serait vaine. Mais si tu me l'exprime ici parce que tu souhaiterais quelques indices explicatifs pour te mettre sur la voie d'une compréhension, je serais ravi de te les donner !
Même par MP, si tu as peur de la naïveté de tes premières questions !
À +
 

R@chid

XLDnaute Barbatruc
Supporter XLD
Re : OutIdx. Macro complémentaire, modules de classe et indexation

Bonjour @ tous,

Rien ? mais vraiment RIEN ?
Oui Vraiment rien...

Il est vrai qu'avec ce que tu arrive à tirer des formules, le VBA peut te sembler une haute montagne dont l'ascension serait vaine
Non c'est pas ça???
Peut être si je sais faire du VBA, je vais dire que les Formules me semblent une haute montagne dont l'ascension serait vaine,
car on peut tout faire avec du VBA mais pas le contraire...

me l'exprime ici parce que tu souhaiterais quelques indices explicatifs pour te mettre sur la voie d'une compréhension, je serais ravi de te les donner !
Vraiment c'est très gentil, et je t'en remercie...
mais je te l'ai exprimé pour te dire que j'ai envie de venir donner des idées mais du fait que je ne sais rien faire en VBA et je n'ai pas bien compris ce que cette application peut faire, alors je reste loin d'ici et je viens parfois lire et sortir ...

Même par MP, si tu as peur de la naïveté de tes premières questions !
si tu veux dire que tu peux m'aider même par MP si j'ai honte de poser les questions sur des discussions, je vais te dire Merci mais c'est pas ça le problème, voici un lien qui va te dire tellement de choses sur R@chid...
tu sais cette discussion que j'ai crée, je n'en avais pas Besoin, c’était juste pour commencer @ apprendre Excel,
je ne fais rien avec Excel dans ma vie, mais j'aime bien me casser la tête avec c'est tout...
et quand j'aurai besoin d'aide sur VBA je n’hésiterai pas @ le demander sur le Forum c'est normal sans avoir honte...

je m'amuse bien avec les formules, mais sois sur mon cher ami, je vais penser @ me tourner vers le VBA, et je vais charger ta Boite de MP


Merci
Amicalement
 

Dranreb

XLDnaute Barbatruc
Re : OutIdx. Macro complémentaire, modules de classe et indexation

Bonjour à tous.

Allez, je vous donne un indice sur le mode de fonctionnement du nouveau module de classe ComboBoxLiés, (pour choix en désordre) histoire de vérifier une dernière fois que ça n'intéresse vraiment personne.
Contrairement au ComboBoxCasc (choix en cascade prédéfinie), qui travaille avec un seul vrai dictionnaire arborescent à plusieurs niveaux,
lui, travaille avec des dictionnaires indépendants, arborescents mais d'un seul niveau, c'est à dire dont les items sont les listes des lignes portant chaque valeur de clé. Chaque ComboBox en a 2 à sa disposition: un qui est le reflet de l'ensemble de la BdD (classé sans doublon sur sa clé bien évidemment), l'autre qui est rendu par une nouvelle fonction DicoFiltré dans MDictionnarbo.
Cette fonction restitue un dictionnaire filtré, c'est à dire ne contenant que les numéros de lignes spécifiés dans une table. Or l'item des dictionnaires arborescents attachés aux ComboBox ayant fait l'objet de choix …est justement une table de numéros de lignes ! Il suffit donc de filtrer le dictionnaire global de chaque ComboBox non renseigné à l'aide de l'item du dernier renseigné…
Ça reste quand même plus lent que ComboBoxCasc. Convient donc soit pour des petites bases de données soit pour peu d'arguments.

Cordialement.
 
Dernière édition:

david84

XLDnaute Barbatruc
Re : OutIdx. Macro complémentaire, modules de classe et indexation

Bonjour,
C'est un petit bijou ton outil !
Pas trop le temps en ce moment (occupé sur d'autres projets) mais laisse-moi un peu de temps pour m'y remettre et je reviens te voir.
A+
 

ChTi160

XLDnaute Barbatruc
Re : OutIdx. Macro complémentaire, modules de classe et indexation

Salut Dranred
Bonjour le Fil
Bonjour le Forum
moi je suis un autodidacte, mais j'aime étudier ce genre de proposition, du Haut niveau loin de mon VBA Lol
les exemples joints sont parlants .
Je te remercie donc de ce partage (qui va peut être me causer pas mal de Maux de tête Lol)
Bonne Continuation
si je peux me permettre
Quelles sont tes références en ce qui concerne cette utilisation des Modules de Classe
Amicalement
Jean Marie
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : OutIdx. Macro complémentaire, modules de classe et indexation

Bonjour
qui va peut être me causer pas mal de Meaux de tête Lol
Mais non, mais non ! Ou alors aide moi à trouver l'aspirine. Je ne puis déceler les points de vue obscurs à première lecture. Dans la prochaine version de DémoOutIdx il y aura un synoptique de l'organisation du OutIdx

Quelles sont tes références en ce qui concerne cette utilisation des Modules de Classe
Je ne suis pas sûr de comprendre la question. Un peu l'expérience et beaucoup l'aide VBA (après rectification, mentalement, entre autres, de la traduction en "supprimer" faite de "to raise" dans l'explication du RaiseEvent en le sens correct ici de "décréter")
Amicalement.
 

Pièces jointes

  • SynOutIdx.jpg
    40.3 KB · Affichages: 195
  • SynOutIdx.jpg
    40.3 KB · Affichages: 193
Dernière édition:

ChTi160

XLDnaute Barbatruc
Re : OutIdx. Macro complémentaire, modules de classe et indexation

Ok Merci

pour ce qui est de ton utilisation des DICO as tu des références pour que je m'y référe
Merci par avance
Amicalement
Jean Marie
PS correction Faite
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…