XL 2016 Macro ou fonction matricielle

thomasdu43

XLDnaute Occasionnel
Bonjour,

J'ai créé une base de données dans laquelle je viens "piocher" les infos en fonction de certain critères. Je m'aperçois que ma formule faisant appel à plusieurs critères, le résultat est plutôt long à obtenir.
Question de novice, existe-il un code VBA qui permettrait de gagner en rapidité d'exécution ?

je vous remercie.
 

Dranreb

XLDnaute Barbatruc
Bonjour.
Cherchez ComboBoxLiées dans la zone de recherche. Cet objet est très rapide pour retrouver les numéros de lignes contenant une combinaison de valeurs spécifiées dans plusieurs ComboBox se rapportant à différentes colonnes, car il n'a pas besoin de reconsulter la Base pour cela. Au moment de constituer les listes complètes pour les ComboBox dont on lui a confié la charge, il aura en effet noté en mémoire tout ce qu'il lui faut.
 

thomasdu43

XLDnaute Occasionnel
Bonjour.
Cherchez ComboBoxLiées dans la zone de recherche. Cet objet est très rapide pour retrouver les numéros de lignes contenant une combinaison de valeurs spécifiées dans plusieurs ComboBox se rapportant à différentes colonnes, car il n'a pas besoin de reconsulter la Base pour cela. Au moment de constituer les listes complètes pour les ComboBox dont on lui a confié la charge, il aura en effet noté en mémoire tout ce qu'il lui faut.
Bonjour et merci pour cette réponse.
En faisant la recherche, je vois que vous avez répondu/posté plusieurs posts sur ce sujet.
Je vais tenté de trouvé un exemple.
Merci.
 

thomasdu43

XLDnaute Occasionnel
Bonjour.
Cherchez ComboBoxLiées dans la zone de recherche. Cet objet est très rapide pour retrouver les numéros de lignes contenant une combinaison de valeurs spécifiées dans plusieurs ComboBox se rapportant à différentes colonnes, car il n'a pas besoin de reconsulter la Base pour cela. Au moment de constituer les listes complètes pour les ComboBox dont on lui a confié la charge, il aura en effet noté en mémoire tout ce qu'il lui faut.
Bonjour Danreb,
Après une journée sur mon tableur excel qui me sort par les yeux, je vous pousse celui-ci. J'ai tenté de jeter un oeil (enfin les 2) sur l'un de vos fichiers. Je pense que la fatigue de la journée et de la semaine ne m'aident pas à comprendre commment fonctionne la ComboBoxLiées. Au de là de ça, je pense que ça dépasse mes compétences.
Pourriez vous m'aider à "fluidifier" l'obtention des résultats de mon onglet "Choix" qui s'appuie sur l'onglet "BD_Générale".
Je vous remercie.
 

Pièces jointes

  • Test_28062019.xlsm
    239.6 KB · Affichages: 9

Dranreb

XLDnaute Barbatruc
Sur quel fichier ? Celui joint n'est visiblement pas de moi !
L'objet ComboBoxLiées est fait pour gérer des ComboBox ActiveX. Ce ne serait pas complètement impossible qu'elles soient implantées dans une feuilles, mais plus aléatoire à gérer que dans leur support normal: l'UserForm.
Tout ce qui pourrait dépasser vos compétence est programmé dedans, et cette programmation met au service de l'UserForm des dispositifs faciles à utiliser.
Cependant si quelque chose n'est pas clair dans l'aide, dites le moi.
Quels sont les critères de la BD_Générale sur laquelle vous aimeriez pouvoir rechercher une ligne ou un groupe de lignes et que faut-il en faire ensuite ?
 

thomasdu43

XLDnaute Occasionnel
Sur quel fichier ? Celui joint n'est visiblement pas de moi !
L'objet ComboBoxLiées est fait pour gérer des ComboBox ActiveX. Ce ne serait pas complètement impossible qu'elles soient implantées dans une feuilles, mais plus aléatoire à gérer que dans leur support normal: l'UserForm.
Tout ce qui pourrait dépasser vos compétence est programmé dedans, et cette programmation met au service de l'UserForm des dispositifs faciles à utiliser.
Cependant si quelque chose n'est pas clair dans l'aide, dites le moi.
Le fichier transmis est le mien fidèlement aux conseils que vous soumettez en signature.
J'espérai que vous puissiez le modifier ;). Le jargon employé ne m'est pas familié...
Merci.
 

Dranreb

XLDnaute Barbatruc
Ben pour que le jargon vous devienne plus familier, quoi …
Oui je peux vous créer un UserForm juste pour cerner les lignes de BD_Générale selon certain critères si vous me dites dans quelles colonnes ils sont, et ce qu'il faut en faire ensuite.
Installez le CBxLCtlA.xlam à partir de ce fichier.
 

Pièces jointes

  • CBxLCtlA.xlsm
    156.8 KB · Affichages: 3
Dernière édition:

thomasdu43

XLDnaute Occasionnel
Ben pour que le jargon vous devienne plus familier, quoi …
OKay, par "moins" j'aurai du comprendre "moi", je vous dis la fatigue et la chaleur m'achèvent.
Qu'est qu'une ComboBoxLiées et des ComboBox ActiveX ?
Avez vous pu ouvrir mon fichier et voir si le besoin s'adapte à ma demande. J'ai l'impression que la ComboBoxLiée est une machine de guerre par rapport à la bataille que je dois mener.
Merci.
 

Dranreb

XLDnaute Barbatruc
Ah oui, quelle coquille !
Un UserForm, vous savez bien ce que c'est, au moins ?
ComboBoxLiées est un type d'objet que j'ai créé pour gérer plusieurs ComboBox relatives à différentes colonnes d'un même tableau.
Une ComboBox est une zone de saisie munie d'une liste. Plus juste de dire ça que l'intitulé "Zone de liste déroulante" ou "modifiable" sur lequel vous tomberez fatalement. Excel en possède sa propre version, vieillie, en tant qu'objet de formulaire. On précise ActiveX pour l'en distinguer.
Je ne sais pas encore, ça dépend surtout de ce qu'il faudra faire de la ligne trouvée
Oui mais une machine de guerre qui se battra à vos cotés, au prix de beaucoup moins de programmation qu'en essayant d'ajuster des listes de validation !
Information: si vous faisiez subir à la BD_Générale une mise sous forme de tableau, ça permettrait de spécifier à l'objet ComboBoxLiées les titres des colonnes au lieu de leurs numéros ou entêtes de colonnes.
 
Dernière édition:

thomasdu43

XLDnaute Occasionnel
Ah oui, quelle coquille !
Un UserForm, vous savez bien ce que c'est, au moins ?
ComboBoxLiées est un type d'objet que j'ai créé pour gérer plusieurs ComboBox relatives à différentes colonnes d'un même tableau.
Une ComboBox est une zone de saisie munie d'une liste. Plus juste de dire ça que l'intitulé "Zone de liste déroulante" ou "modifiable" sur lequel vous tomberez fatalement. Excel en possède sa propre version, vieillie, en tant qu'objet de formulaire. On précise ActiveX pour l'en distinguer.
Je ne sais pas encore, ça dépend surtout de ce qu'il faudra faire de la ligne trouvée
Oui mais une machine de guerre qui se battra à vos cotés, au prix de beaucoup moins de programmation qu'en essayant d'ajuster des listes de validation !
Information: si vous faisiez subir à la BD_Générale une mise sous forme de tableau, ça permettrait de spécifier à l'objet ComboBoxLiées les titres des colonnes au lieu de leurs numéros ou entêtes de colonnes.
Merci, je ne suis pas certain que ça réponde à mon besoin. Je ne souhaite pas une Userform mais conservé le format du tableau tel qu'il est.
Merci quand même.
 

Dranreb

XLDnaute Barbatruc
C'est vous qui voyez. L'objet ComboBoxLiées est capable de fournir instantanément la liste des numéros de lignes contenant simultanément les valeur spécifiées dans toutes les ComboBox dont il a la charge. Il est envisageable de cantonner l'UserForm à ce seul rôle quitte à ce qu'il stocke simpement les valeurs de la ligne ou des des lignes trouvées dans un tableau Public dont vous ferez ce que vous voudrez. Il est aussi possible de tout afficher dans des TextBox.
 

thomasdu43

XLDnaute Occasionnel
C'est vous qui voyez. L'objet ComboBoxLiées est capable de fournir instantanément la liste des numéros de lignes contenant simultanément les valeur spécifiées dans toutes les ComboBox dont il a la charge. Il est envisageable de cantonner l'UserForm à ce seul rôle quitte à ce qu'il stocke simpement les valeurs de la ligne ou des des lignes trouvées dans un tableau Public dont vous ferez ce que vous voudrez. Il est aussi possible de tout afficher dans des TextBox.
ah okay !
Je ne veux pas vous faire perdre du temps... Vous n'auriez pas un exemple simple de la gestion d'une table via ces ComboBox ?
Merci.
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 069
Messages
2 085 040
Membres
102 763
dernier inscrit
NICO26