Forcer le format nombre en sortie userform

Résolu/Fermé
ricnoynoy Messages postés 15 Date d'inscription jeudi 25 avril 2019 Statut Membre Dernière intervention 3 mai 2019 - 26 avril 2019 à 15:58
ricnoynoy Messages postés 15 Date d'inscription jeudi 25 avril 2019 Statut Membre Dernière intervention 3 mai 2019 - 30 avril 2019 à 17:38
Bonjour,


J'aimerai qu'en sortie d'userform, ma textbox40 soit forcer en format nombre. Car elle se colle en texte et les données ne sont ensuite plus exploitables.

J'ai déjà tenté le cbdl devant textbox40 sans succès (si quelqu'un peut m'expliquer pourquoi d'ailleurs que je progresse ?)

Voici la partie du code en question :

Private Sub CommandButton1_Click()



If ComboBox20.Value = "Ansot" Then
With Sheets("ANSOT")
With .Cells(.Rows.Count, "A").End(xlUp)(2)
.Value = TextBox10
.Offset(0, 1).Value = ComboBox20
.Offset(0, 2).Value = CDate(TextBox30)
.Offset(0, 3).Value = TextBox40
.Offset(0, 4).Value = TextBox50
End With
End With


Merci d'avance.
A voir également:

2 réponses

juer31 Messages postés 107 Date d'inscription mercredi 16 décembre 2015 Statut Membre Dernière intervention 25 mars 2024 6
Modifié le 26 avril 2019 à 16:20
Essai mais pas certain

.Offset(0, 3).Value = CDbl(UserForm!TextBox40.Value)
0
ricnoynoy Messages postés 15 Date d'inscription jeudi 25 avril 2019 Statut Membre Dernière intervention 3 mai 2019
26 avril 2019 à 16:36
Bonjour juer31 et merci pour l'aide.

Je n'y avais pas pensé en effet, mais ça ne marche pas. C'est peut-être la textbox qu'on doit formater en amont ?

Déjà essayés :

.Offset(0, 3).Value = CDbl(UserForm!TextBox40.Value)
.Offset(0, 3).Value = CDbl(TextBox40)
.Offset(0, 3).Value = Val(TextBox40)
0
f894009 Messages postés 17191 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 20 mai 2024 1 707
30 avril 2019 à 17:23
Bonjour,

Peut-etre au niveau du separateur de decimale!!!!!!
0
ricnoynoy Messages postés 15 Date d'inscription jeudi 25 avril 2019 Statut Membre Dernière intervention 3 mai 2019
30 avril 2019 à 17:38
J'ai finalement trouvé après des heures de galère ^^ : .Offset(0, 3).Value = CDbl(Me.TextBox40) *1

Ce n'est pas une solution très orthodoxe mais elle a fonctionné. En multipliant par 1 ça lui donne un format nombre.

PS : la même formule sans le "*1" ne fonctionnait pas.

Si quelqu'un a une explication logique, je suis preneur.
0
ricnoynoy Messages postés 15 Date d'inscription jeudi 25 avril 2019 Statut Membre Dernière intervention 3 mai 2019
30 avril 2019 à 15:35
UP !
0
f894009 Messages postés 17191 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 20 mai 2024 1 707
30 avril 2019 à 17:37
Bonjour,
Comme ecrit précédemment , voir cote separateur de decimale
0