Bonjour,
J'ai une combobox comportant des % (50%, 20%..)dans une userform.
Quand je selectionne 50% par exemple il apparait dans la combobox 0.5 et pas 50%.
Est il possible de faire apparaitre 50% au lieu de 0.5
Merci d'avance pour vos réponse.
Cdt
Version imprimable
Bonjour,
J'ai une combobox comportant des % (50%, 20%..)dans une userform.
Quand je selectionne 50% par exemple il apparait dans la combobox 0.5 et pas 50%.
Est il possible de faire apparaitre 50% au lieu de 0.5
Merci d'avance pour vos réponse.
Cdt
Je n'est que une seul combobox
juste un conseil : rempli ton combo avec des strings et pas des valeurs chiffrées.
Exemple
Mon exemple est un peu trivial, mais... il devrait te permettre d'avancer.Code:
1
2
3
4
5
6
7 'je veux remplir un combobox de 1 a 100% with moncombo for i=0.01 to 1 step 0.01 .additem(cstr(100*i) & " % ") next end with
Bonjour, EvaristeGaloisBis,
1) je jurerais qu'il utilise une Combobox liée à une source de données... (bien qu'il ne nous en parle pas ...) ===>> oublie alors le additem et son format ...;)
2) ma question reste entière ...
Edit : bien que je commence à deviner ce qu'il entend (et qu'il n'a pas dit !) par :
Une autre fois : la précision est nécessaire lors de la rédaction d'une question ...;)Citation:
Quand je selectionne 50% par exemple
C'est probablement une question de conversion en valeur numérique et de format d'affichage (ou encore de style d'affichage)... J'ai testé et ceci fonctionne :
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13 Option Explicit Private Sub UserForm_Click() Dim i As Integer For i = 1 To 10 ComboBox1.AddItem CStr(i * 10) & "%", i - 1 Next End Sub Private Sub ComboBox1_Click() ActiveCell.Value = CDbl(ComboBox1.Text) ActiveCell.Style = "percent" End Sub
zazaraignée: j'ai testé tes codes en les mettant dans ma userform permettant la saisie, et les chiffres n'apparaissent toujours pas en pourcentage quand je les selectionne dans la liste déroulante.
Pour répondre aux questions précédentes, en effet ma liste déroulante est lié à une source de données reprenant les pourcentage suivant:20%, 25%, 33%,40% et 50%.
Pardi ...;)
Si tel est le cas, une Combobox étant compsée d'articles en type string, elle affiche exactement de qui est dans ta source de données.
Si les articles affichés (au déroulement de ta Combobox) le sont bien avec le %, ils ne peuvent ensuite changer "spontanément" (sans code) d'aspect....
A quel moment, donc, et où (dans quoi) , dis-tu qu'ils passent de la forme 50 % à 0.5 ?
de toute façon 50% = 0,5 alors... c'est juste une question de format.
Salut
Il était probablement tard ici... :lol: J'avais surement les yeux dans l'même trou!
Je n'ai même pas remarqué que j'ai copié le code du Form... qui n'est pas bon...
Ma dernière solution consistait à lier mon ComboBox à une plage de cellules contenant les pourcentages et le seul bout de code à tenir en compte (et qui marche bien chez moi), c'est le code de l'événement Click du ComboBox. Soit ceci :
Ma plage source pour le ComboBox contient bien des pourcentage mais dont le format de cellule, en vérifiant dans la boîte de dialogue Format de cellule, est à Pourcentage puisque je les ai entrés à la main tapant 20%, 30%... Si on remettait ces cellules en format Standard, on y verrait des fractions.Code:
1
2
3
4 Private Sub ComboBox1_Click() ActiveCell.Value = CDbl(ComboBox1.Text) ActiveCell.Style = "percent" End Sub
Cela ne marche pas et me met un débogage sur ton code
Je vous joint mon programme.
Il suffit de cliiquer sur le bouton "saisie" et cliquer sur la liste déroulante % CG OSEO.
Merci d'avance pour votre aide
http://cjoint.com/?iBkftAgZCE