XL 2016 VBA affichage nombre décimal (2chiffres après la virgule)

PORCHER

XLDnaute Occasionnel
J'ai un problème avec input box
Il renvoi dans ma TextBox un nombre arrondi ( ex.: je rempli mon inputBox 46, 58 il me renvoi 47)
Private Sub Affpnumajout_Click()
Dim Nbre As Integer
Nbre = Application.InputBox _
(Prompt:="Entrer le nouveau montant.", _
Title:="Nouveau Montant.", Default:="0,00", Type:=1)
If Nbre = False Then Exit Sub
OP_mt_ope = Nbre ' Ma TextBox montant
'Converti la valeur en Franc
Tx_ConvertFrancEuro = CDbl(OP_mt_ope.Value) * 6.55957

'Applique un Format Franc
Tx_ConvertFrancEuro.Value = Format(Tx_ConvertFrancEuro.Value, "#,##0.00"" FRF""")
End Sub
Merci de m'aider
 

Staple1600

XLDnaute Barbatruc
Bonjour à toi aussi PORCHER

(Revoir le point qui parle du bonjour et caetera dans la charte ;))

Sinon, pas de fichier excel sous le coude?
(histoire de ne pas se fader la re-construction d'un convertisseur euro/franc avec userform , textbox et tutti quanti, qui existe déjà sur ton disque dur ;))
 

Staple1600

XLDnaute Barbatruc
Re,

PORCHER
Du coup, le temps que tu nous claques la bise ;), j'ai pris le temps de faire une petit test
(Un userform, deux TextBox, Un CommandButton)
Et roule, ma poule, 46.58 reste 46.58, non ?
VB:
Private Sub CommandButton1_Click()
Nbre = Application.InputBox _
(Prompt:="Entrer le nouveau montant.", _
Title:="Nouveau Montant.", Default:="0,00", Type:=1)
If Nbre = False Then Exit Sub
TextBox1 = Nbre
Frc = Round(Nbre * 6.55957, 2)
TextBox2 = Format(Frc, "#,##0.00"" FRF""")
End Sub
En tout cas, sur mon PC, oui.
 

patricktoulon

XLDnaute Barbatruc
bonsoir
ce qui'il y a de bien avec l'inputbox (de l'application) c'est que le return boolean n'est pas forcement nécessaire dans ce cas précis pour le type 1

en déclararant nbre en double des le départ en en récupérant le cdec de l'input
l’opération est simple
si ca vaut plus que zero on fait sinon on fait pas

VB:
Private Sub CommandButton1_Click()
    Dim nbre As Double
    nbre = CDec(Application.InputBox(Prompt:="Entrer le nouveau montant.", Title:="Nouveau Montant.", Default:="0,00", Type:=1))
    If nbre > 0 Then OP_mt_ope = nbre: Tx_ConvertFrancEuro.Value = Format(CDbl(nbre * 6.55957), "#,##0.00"" FRF""")
End Sub
 
Dernière édition:

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 206
Messages
2 086 219
Membres
103 158
dernier inscrit
laufin