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 :

Pb d'affichage d'un combobox [XL-365]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Femme Profil pro
    reconversion en cours
    Inscrit en
    Juillet 2009
    Messages
    637
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : reconversion en cours
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2009
    Messages : 637
    Par défaut Pb d'affichage d'un combobox
    Bonjour,
    J'ai créé un combobox (Menu développeur / Insérer / Contrôles ActiveX / zone de liste déroulante.
    J'ai créé une table de données de 0% à 100% avec un pas de 10.

    Nom : Combobox.JPG
Affichages : 114
Taille : 19,7 Ko

    J'ai un petit souci esthétique, quand je sélectionne mon combobox, j'ai bien mes pourcentages qui apparaissent 10% ou 50% ; une fois que je clique sur ma sélection, je me retrouve avec 0,1 et non plus 10%

    Est-ce que quelqu'un peut m'aider svp ? Merci

  2. #2
    Membre éclairé Avatar de Vba14
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2019
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2019
    Messages : 440
    Par défaut
    Bonjour,

    Il faut mettre le format de la combo au format de la feuille

    Quelque chose comme ça peut-être

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Private Sub UserForm_Initialize()
        Dim i As Long
        With Me.ComboBox1: For i = 1 To 3: .AddItem Worksheets("Feuil1").Range("E" & i).Text: Next i: End With
    End Sub

  3. #3
    Membre Expert
    Inscrit en
    Décembre 2002
    Messages
    993
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 993
    Par défaut
    Salut,
    C'est parce que Excel stocke les pourcentages sous forme décimale et c'est donc ce qu'il affiche quand ton choix est fait dans la combobox.
    Il faut donc formater pour le présenter sous forme de pourcentage.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub ComboBox1_Change()
        If IsNumeric(Me.ComboBox1.Value) Then
            Me.ComboBox1.Value = Format(Me.ComboBox1.Value, "0%")
        End If
    End Sub

  4. #4
    Membre éclairé
    Femme Profil pro
    reconversion en cours
    Inscrit en
    Juillet 2009
    Messages
    637
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : reconversion en cours
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2009
    Messages : 637
    Par défaut
    Bonjour
    Merci pour vos réponses
    VBA14, il ne s'agit pas d'un USF mais d'un contrôle.
    Franc, cela fonctionne, mais la macro ne fonctionne plus...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub BadTop()
    'Dim NbBad As Double
    NbBad = CbxBadTop.Value 
    With Sheets("Agents")
    '    .CbxBadTop.ListFillRange = Sheets("Mod'Op").Range("TbBad[BadTop]").Address(External:=True)
        .PivotTables("TcdAgts").PivotFields("[export].[Technicien].[Technicien]").ClearValueFilters
        .PivotTables("TcdAgts").PivotFields("[export].[Technicien].[Technicien]") _
            .PivotFilters.Add2 Type:=xlValueIsGreaterThanOrEqualTo, DataField:=ActiveSheet _
            .PivotTables("TcdAgts").CubeFields("[Measures].[Tx Ko]"), Value1:=NbBad
        .PivotTables("TcdAgts").PivotFields("[export].[Technicien].[Technicien]") _
            .AutoSort xlDescending, "[Measures].[Tx Ko]"
        .Range("H5").Select
    End With
    End Sub
    j'ai une incompatibilité de type si je laisse Option explicit (j'ai essayé avec variant) :
    NbBad = CbxBadTop.Value prend la valeur "50%"
    Sans Option Explicit, j'ai une erreur "argument ou appel de procédure incorrect" sur la partie grasse ci-dessus
    Merci

  5. #5
    Membre Expert
    Inscrit en
    Décembre 2002
    Messages
    993
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 993
    Par défaut
    Salut,

    Si CbxBadTop.Value est la combobox dont tu parles plus haut, il se peut alors que NbBad prenne une valeur du genre 50%, pour être sûr qu'il reçoit un nombre fais ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NbBad = Val(CbxBadTop.Value)

  6. #6
    Membre éclairé
    Femme Profil pro
    reconversion en cours
    Inscrit en
    Juillet 2009
    Messages
    637
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : reconversion en cours
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2009
    Messages : 637
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NbBad = Val(CbxBadTop.Value) / 100
    Merci Franc, cela fonctionne correctement

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 01/06/2006, 19h45
  2. [vb.net]l'affichage dans le combobox
    Par hanan_tsdi2_deMaroc dans le forum Windows Forms
    Réponses: 5
    Dernier message: 26/05/2006, 14h34
  3. Affichage dans un Combobox
    Par yanba dans le forum Composants VCL
    Réponses: 5
    Dernier message: 06/02/2006, 09h49
  4. [C#] Besoin d'aide sur l'affichage d'une combobox
    Par dcd3 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 08/10/2005, 00h43
  5. []probleme affichage valeur dans combobox
    Par gup dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 23/09/2005, 09h22

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