IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Problème de changement de police sur une ComboBox


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 3
    Par défaut Problème de changement de police sur une ComboBox
    Bonjour,

    Après avoir recherché dans ce forum une réponse à mon problème sans la trouver, et après avoir effectué plusieurs tests sans succès ; je me permet de soumettre ma problématique à la communauté :

    Sujet : La réalisation d'un tableau de bord.
    Problème : changement de la police de caractère dans une liste déroulante (ComboBox) d'un formulaire.

    Dans le cadre de mon taff, je suis amené à développer un tableau de bord de suivi. Pour ce faire j'ai décidé de proposer aux utilisateurs la modification des données contenues dans ce tableau de bord (fichier excel) via un formulaire.
    Dans ledit formulaire, je dispose pour chaque point à suivre d'un indicateur (sous forme d'un smiley en police Wingdings (lettres J,K,L)) et d'une tendance (Sous forme de flèches, également en police Wingdings (lettres ì, è, î)). Voilà pour la base.

    Dans le formulaire de modification, j'ai donc disposé une liste déroulante de choix (ComboBox donc) pour l'indicateur et une pour la tendance ; chacune listant les trois valeurs qui leurs sont rattachées. Pour l'affichage en WingDings dans les listes déroulantes : pas de problème à ce niveau.

    Le problème survient lorsque je souhaite modifier via VBA (dans la sub ComboBox_change() ) la police Wingdings en Arial via la propriété .Font de la ComboBox lorsque la valeur rentrée dans la liste n'est plus une des trois valeurs de la liste. (Par exemple lorsque l'utilisateur ne souhaite pas renseigner un indicateur et qu'il ne met rien ; ou qu'il met "N/A" par exemple. Afin de pouvoir lire le "N/A" en question il me faut bien changer la police en Arial.

    Le bout de code que j'utilise pour ce faire fonctionne bien avec la combobox rattachée aux smileys (J,K,L). La police du contrôle passe bien de WingDings à Arial et réciproquement en fonction du contenu renseigné dans le contrôle. Par contre, et avec exactement le même bout de code adapté au contrôle de la tendance (lettres ì, è, î), je ne parvient pas à repositionner la police de mon contrôle sur Wingdings une fois que celle-ci est passée en Arial. Pourtant la propriété FontName est bien celle recherchée mais le contenu de la cellule indique désespérément ì, è, î plutôt que mes trois ch'tites flèches attendues.

    En cherchant un peu, je me suis apperçu que lorsque je changeais les 3 lettres ì, è, î par J,K,L ou une lettre standard dans la palge nommée qui sert de référence au contenu de ma combobox, et que j'adapte la condition de mon If dans le code (en remplaçant les ì, è, î par J,K,L) (la condition If me servant à basculer de Arial à Wingdings et inversement), je retrouve mon changement automatique de police sans erreur.

    J'en viens à me demander si ce problème ne serait pas dû aux caractères accentué peu ou mal gérés du fait de leur accentuation ...

    Si vous pouviez me confirmer ou m'infirmer la chose, voire me conseilller une solution de contournement, vous me sortiriez d'un embaras certain.

    Par avance merci


    Salem

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Remplace tes caractères par leurs valeur Ascii. Chr(245) donne une flêche droite dans Wingdings, par exemple
    A tout hasard...

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 3
    Par défaut
    Bonjour,

    C'est effectivement une piste que j'ai déjà explorée, notamment lorsque je me suis rendu compte que les caractères accentués semblaient être la cause de mon problème.

    J'avais donc transformé la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If Form_Ajout.Cbx_Tend_BGT.Value = "ì" Or Form_Ajout.Cbx_Tend_BGT.Value = "è" Or Form_Ajout.Cbx_Tend_BGT.Value = "î" Then
    Par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If Form_Ajout.Cbx_Tend_BGT.Value = chr(236) Or Form_Ajout.Cbx_Tend_BGT.Value = chr(232) Or Form_Ajout.Cbx_Tend_BGT.Value = chr(238) Then
    Le problème est resté identique ...

  4. #4
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 3
    Par défaut
    Bonjour,

    Ta réponse corrige effectivement mon problème SilkyRoad

    (Je suis d'ailleurs un peu honteux de ne pas l'avoir trouvé seul dans la FAQ ... On ne m'y reprendra plus).

    Merci à vous deux de vous être penché sur mon problème.

    Bonne journée

    Salem

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Changement de datasource sur une combobox
    Par Shadam dans le forum VB.NET
    Réponses: 3
    Dernier message: 23/03/2011, 11h34
  2. Réponses: 6
    Dernier message: 31/03/2006, 08h01
  3. Changement de couleur de police sur une partie d'un caption
    Par kobe dans le forum Composants VCL
    Réponses: 3
    Dernier message: 11/07/2005, 10h18
  4. Problème lors d'un Update sur une date
    Par Nany dans le forum ASP
    Réponses: 3
    Dernier message: 19/05/2004, 22h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo