Bonjour, tout le monde,
j'ai un userform qui contient un textbox avec des valeurs numériques parfois lorsque je veux mettre des zéros devant un nombre par exemple 00567 Lors du transfert des données de ce userform vers une feuille la cellule qui reçoit la valeur 00567 n'affiche pas la valeur telle quelle mais plutôt 567 SACHANT QUE JE NE VEUX PAS PERSONNALISER la colonne qui reçoit les valeur du textbox en mettant 0000000 je me demande s'il y a une macro ou bien une opération pour résoudre ce cas
Lors du transfert des données de ce userform vers une feuille la cellule qui reçoit la valeur 00567 n'affiche pas la valeur telle quelle JE NE VEUX PAS PERSONNALISER la colonne qui reçoit les valeur du textbox
Ca marche, merci
j'ai un autre userform qui contient un combobox alimenter à partir de cette colonne le problème c'est que ce combobox élimine les zéros devant les nombres
j'ai un autre userform qui contient un combobox alimenter à partir de cette colonne le problème c'est que ce combobox élimine les zéros devant les nombres
Les éléments d'une ComboBox étant toujours du texte il n'y a aucune raison que les zéros soient éliminés dans la liste, revoyez la manière dont cette liste est créée.
Les éléments d'une ComboBox étant toujours du texte il n'y a aucune raison que les zéros soient éliminés dans la liste, revoyez la manière dont cette liste est créée.
Private Sub UserForm_Initialize()
Dim a2()
Dim TEMP()
Set f = Sheets("BD")
Set rng = f.Range("A2:N" & f.[A65000].End(xlUp).Row)
Set mondico = CreateObject("Scripting.Dictionary")
BD = rng.Value
ncol = rng.Columns.Count
ListBox1.ColumnCount = ncol
a = f.Range("B2:B" & f.[A65000].End(xlUp).Row) ' tableau a(n,1) pour rapidité
For i = LBound(a) To UBound(a)
If a(i, 1) <> "" Then mondico(a(i, 1)) = Val(a(i, 1))
Next i
TEMP = mondico.Items
Call Tri(TEMP, LBound(TEMP), UBound(TEMP))
Me.ComboBox2.List = TEMP
Les éléments d'une ComboBox étant toujours du texte il n'y a aucune raison que les zéros soient éliminés dans la liste, revoyez la manière dont cette liste est créée.
Private Sub UserForm_Initialize()
Dim a2()
Dim TEMP()
Set f = Sheets("BD")
Set rng = f.Range("A2:N" & f.[A65000].End(xlUp).Row)
Set mondico = CreateObject("Scripting.Dictionary")
BD = rng.Value
ncol = rng.Columns.Count
ListBox1.ColumnCount = ncol
a = f.Range("B2:B" & f.[A65000].End(xlUp).Row) ' tableau a(n,1) pour rapidité
For i = LBound(a) To UBound(a)
If a(i, 1) <> "" Then mondico(a(i, 1)) = Val(a(i, 1))
Next i
TEMP = mondico.Items
Call Tri(TEMP, LBound(TEMP), UBound(TEMP))
Me.ComboBox2.List = TEMP
je peux faire ce que vous me recommander mais comme ça tout les nombres affichés dans ce combobox commenceront par des ZEROS ce qui va affecter ma recherche ou bien mon filtre pour afficher des données dans une listbox en fonction de ce combobox .
mois je veux que le combobox m'affiche les chiffres tels quels sont sur la colonne du feuille de calcul comme ca
456
12345
8990
334
006543
00812
08976 pas comme ca
0000456
0012345
0008990
0000334
0006543
0000812
0008976
je dois effacer val dans cette ligne est le problème est résolu.
If a(i, 1) <> "" Then mondico(a(i, 1)) = Val(a(i, 1))
SOLUTION
If a(i, 1) <> "" Then mondico(a(i, 1)) = a(i, 1)