OVH Cloud OVH Cloud

Format TextBox

1 réponse
Avatar
pabd
Bonjour,
J'ai un UserForm avec plusieurs contrôles dont un textBox devant me renvoyer
une valeur numérique sur une feuille.
Qund je valide, Excel m'indique sur la feuille de destination que le nombre
est renvoyé sous forme de texte.
Comment ds les propriètés de mon TextBox forcé le format en numérique.
J'ai eu le problème avec des dates que j'ai résolu comme cela:


Private Sub TextBox2_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox2 = "" Then Exit Sub
If Not IsDate(TextBox2) Then
MsgBox "Saisir une date sous la forme JJ/MM/AAAA", _
vbExclamation
Cancel = True
Else
TextBox2 = Format(TextBox2, "dd/mm/yyyy")
End If
End Sub


Mais là je connais pas la commande pour :
TextBox4=Format(TextBox4, "format numérique")

Merci

Pascal

1 réponse

Avatar
michdenis
Bonjour pabd,

Il est normal qu'un textbox ne puisse pas renvoyer autre chose que tu texte. Non ?

Cependant, il est possible d'utiliser une fonction de conversion ( voir l'aide sous fonction de conversion pour obtenir une
liste plus exhaustive des fonctions disponibles ) et transformer le contenu texte du textbox en "valeur numérique". Pour ce
faire, il est IMPÉRATIF que le séparateur décimal utilisé lors de la saisie des données des "textbox" soit le même que celui
définit dans le panneau de configuration.

If isNumeric(Me.textbox1) = true then
worksheets("Feuil1").range("A25") = Cdbl(Me.textbox1)
else
Msgbox "La donnée du textbox n'est pas considérée comme un nombre"
end if

Tu trouveras sur le site de Misange : "Excelabo" une façon de faire ... et plus d'explications.



Salutations!



"pabd" a écrit dans le message de news:%
Bonjour,
J'ai un UserForm avec plusieurs contrôles dont un textBox devant me renvoyer
une valeur numérique sur une feuille.
Qund je valide, Excel m'indique sur la feuille de destination que le nombre
est renvoyé sous forme de texte.
Comment ds les propriètés de mon TextBox forcé le format en numérique.
J'ai eu le problème avec des dates que j'ai résolu comme cela:


Private Sub TextBox2_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox2 = "" Then Exit Sub
If Not IsDate(TextBox2) Then
MsgBox "Saisir une date sous la forme JJ/MM/AAAA", _
vbExclamation
Cancel = True
Else
TextBox2 = Format(TextBox2, "dd/mm/yyyy")
End If
End Sub


Mais là je connais pas la commande pour :
TextBox4=Format(TextBox4, "format numérique")

Merci

Pascal