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

XL 2010 Indices dans ComboBox au comportement curieux

Magic_Doctor

XLDnaute Barbatruc
Bonsoir,

Dans une base de données il y a une suite de formules chimiques du type H₂O, NaHCO₃. Tous les chiffres sont en indice, comme le stipule toute bonne formule chimique.
Je récupère cette liste dans un ComboBox.
Je déploie la liste du ComboBox, toutes les formules chimiques ont bien leur(s) chiffre(s) en indice.
Je choisis, par exemple, H₂O. Dès que je désélectionne le ComboBox, celui-ci m'affiche H2O, ce qui est franchement très laid.
Est-il possible que le ComboBox affiche, une fois celui-ci désélectionné, H₂O ?
 

Dudu2

XLDnaute Barbatruc
Quand les LISTES DE VALIDATION font comme ici l'affaire pourquoi vouloir utiliser des contrôles ActiveX ?
En effet, je m'étais posé la question.

Je reviens sur mon affaire parallèle d'outil de détection / rename / suppression des Shapes d'une feuille qui m'avait servi pour détecter les objets dans la feuille initiale de @job75. Enfin pour ceux que ça intéresse...

L'idée était de sélectionner les objets pour les faire apparaître. Or si on peut sélectionner certaines Shapes (genre msoFormControl) et faire apparaitre leurs contours en points, on ne peut pas le faire pour d'autres objets (genre msoOLEControlObject) sans être en Mode Création. Et je vous garantis que le Mode Création n'est pas facile à gérer en VBA. Mais j'ai fait une tentative pour cette V2.

Edit: L'inconvénient en Mode Création c'est qu'on ne peut plus jouer sur le .Visible = True / False de ces objets genre msoOLEControlObject. Mais j'ai mis la préférence sur la sélection plutôt que sur le clignotement.

Edit: 01/11/2021 10;31 - Fichier corrigé suite à la découverte de particularités du Mode Création (commentées dans le code)
 

Pièces jointes

  • VBA Objets Shapes détecter, renommer, supprimer V2.xlsm
    105.1 KB · Affichages: 1
Dernière édition:

Magic_Doctor

XLDnaute Barbatruc
Bonjour,

Quand les LISTES DE VALIDATION font comme ici l'affaire pourquoi vouloir utiliser des contrôles ActiveX ?
J'utilise déjà ces listes dans la BD :

En revanche, pour le choix des données puisées dans la BD, dès le départ j'avais opté pour des ComboBox, ce qui, ma foi, tient la route :

Non seulement je trouve ça assez esthétique, mais aussi clair pour n'importe quel quidam qui utiliserait l'application.
Ce qui devrait être, si les gars de Microsoft faisaient mieux leur boulot :

Mais vu la lenteur des décideurs de cette entreprise, ça risque de prendre un certain temps... Mais peut-être qu'en leur envoyant un mail

La solution de Dudu plante chez moi. J'ai regardé ses "entrailles", c'est monumental !

Moralité. Avec les ComboBox je m'en tiendrai aux noms propres des produits plutôt qu'à leur formule chimique. De plus en plus je me rends compte que les Zuniens ne sont pas très cartésiens.
 

Dudu2

XLDnaute Barbatruc
La solution de Dudu plante chez moi.
je comprends pas pourquoi. Y a pas d'API ni de tour de passe passe.
Tu parles bien du fichier du post #5 qui est pour une ComboBox dans UserForm ?
Je sais que c'est pas ta préoccupation première mais c'est quoi le problème ?

Si tu veux, il est sans doute possible de construire une pseudo-ComboBox avec une ListBox.
 

Dudu2

XLDnaute Barbatruc
Je pense être arrivé à maîtriser le Mode Création qui ne se comporte pas de la même façon quand il s'agit du classeur qui exécute le code ou d'un autre classeur sur lequel le code "travaille". J'ai commenté les différences de comportement dans le code.

Le fichier du post #17 a été modifié en conséquence.
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…