VB5 : probleme de taille avec le type CURRENCY - Programmation
Marsh Posté le 19-11-2001 à 17:16:25
Heu, t es sur que :
Euro * 6.55957 ca reste en currency ca ???
j ai pas le temps (et surtout la flemme) mais je jetterai un coup d oeil la dessus a ta place
sinon tu peux toujours caster le nombre en sortie ...
Marsh Posté le 19-11-2001 à 17:48:19
et si je mais mon 6.55957 dans une variable en currency .
je vais essayer ca
Marsh Posté le 19-11-2001 à 17:52:52
bon bah ca change rien ...
c'est quoi ce caste magique ??
Marsh Posté le 20-11-2001 à 08:08:14
Le currency a une precision de 4 décimale .... Or pour convertir en euro on te demande un precision sur 5 decimale (6.55957).
Il faut que tu convertisse en doucle par exple pour avoir la bonne precision : CDbl(nynumber)
Marsh Posté le 20-11-2001 à 10:47:35
ok, en effet, le probleme venait de la
en passant toutes mes variables de calcul en Double et en placant mon resultat dans une variable Currency et affichant cette derniere, ca passe
sauf que je croyais que le Currency etait sur 2 decimales
du coup, ca marche mais comme pas il faudrait ...
comment limiter a 2 decimales ?
merci d'avance de votre aide
[edtdd]--Message édité par Batman-Fr--[/edtdd]
Marsh Posté le 20-11-2001 à 11:42:13
tu peux utiliser ca :
MyStr = Format(334.9, "###0.00" ) ' Returns "334.90".
Marsh Posté le 20-11-2001 à 11:58:20
Bloodymary_ a écrit a écrit : tu peux utiliser ca : MyStr = Format(334.9, "###0.00" ) ' Returns "334.90". |
ca marche impeccable
ca doit etre une fonction assez banale celle la ... je debute totalement en VB avec ce micro-projet
maintenant que je suis chaud, comment lui faire accepter un point ( . ) au lieu de la virgule ( , ) quand je tape un montant ? pcq la, il me sort le debugeur
merci merci a vous
Marsh Posté le 20-11-2001 à 13:25:12
La je veux pas dire de c.. mais je pense que ca depend des params regionaux de windaube
Si c est bien ca, ca devient plus chaud, faut ptet bien faire une gestion specifique en amont ...
Marsh Posté le 20-11-2001 à 14:28:04
mer**
pcq c'est lourd de devoir retourner sur la touche , alors que tout le reste se tape avec le pave numerique ... le . est bcp simple du coup ...
Marsh Posté le 19-11-2001 à 16:18:43
voila, j'ai developpe un petit convertisseur euro pour ma boite
j'ai toutes mes variables en currency et il me semble qu'elles sont limitees a 2 chiffres apres la virgule. Or, il m'en affiche toute une famille
je voudrais savoir comment changer ca ...
merci de votre aide precieuse (comme a l'habitude )
voici mon code :
Dim Actif As String
// ca c'est une image pour fermer le programme
Private Sub Picture7_Click()
Unload Me
End Sub
//
Private Sub txtRecu_GotFocus()
txtRecu.Text = ""
txtEuro.Text = ""
txtFranc.Text = ""
End Sub
Private Sub txtEuro_Change()
Dim Euro As Currency
Dim Franc As Currency
Dim Recu As Currency
If txtEuro.Text <> "" And Actif = "Euro" Then
Euro = txtEuro.Text
txtFranc.Text = Euro * 6.55957
Franc = txtFranc.Text
Recu = txtRecu.Text
txtfranc2.Text = Recu - Franc
txteuro2.Text = (Recu / 6.55957) - Euro
ElseIf Actif = "Euro" Then
txtFranc.Text = ""
End If
End Sub
Private Sub txtEuro_GotFocus()
Actif = "Euro"
txtEuro.Text = ""
txtFranc.Text = ""
End Sub
Private Sub txtFranc_Change()
Dim Franc As Currency
Dim Euro As Currency
Dim Recu As Currency
If txtFranc.Text <> "" And Actif = "Franc" Then
Franc = txtFranc.Text
txtEuro.Text = Franc / 6.55957
Euro = txtEuro.Text
Recu = txtRecu.Text
txtfranc2.Text = Recu - Franc
txteuro2.Text = (Recu / 6.55957) - Euro
ElseIf Actif = "Franc" Then
txtEuro.Text = ""
End If
End Sub
Private Sub txtFranc_GotFocus()
Actif = "Franc"
txtEuro.Text = ""
txtFranc.Text = ""
End Sub
[edtdd]--Message édité par Batman-Fr--[/edtdd]
---------------
Tout ou rien mais rien que tout ! feed-back : http://forum.hardware.fr/forum2.ph [...] ost=121391