Arrondir

darxvirus Messages postés 1 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 20 décembre 2005 - 20 déc. 2005 à 03:03
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 - 20 déc. 2005 à 04:20
Bonjour,

j'aimerai savoir comment arrondir l'argent a 5 ou a 0 a la fin exemple: 23.33 --> 23.35 15.42 ---> 15.45 89.56--->89.60

Merci d'avance

2 réponses

PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
20 déc. 2005 à 04:12
salut,



[VB6]



j'ai détaillé pour bien comprendre, demande au besoin mais c'est assez simple...

(juste une Form)




Option Explicit

'

'

Private Sub Form_Load()

Dim aSomm(4) As Currency, i As Integer

'

aSomm(0) = 23.33

aSomm(1) = 15.42

aSomm(2) = 89.56

aSomm(3) = 80.3

aSomm(4) = 24.97

'

Me.Show

For i = 0 To 4

Call GetArrondSupp(aSomm(i))

Me.Print aSomm(i)

Next i

End Sub

'

'

Private Function GetArrondSupp(ByRef cSomme As Currency) As Boolean

' 23.33 --> 23.35

' 15.42 --> 15.45

' 89.56 --> 89.60





On Error GoTo ErrHandler

' on sépare les unités(Euros) et les centimes(Cts)

Dim lE As Long, lC As Long

lE = Fix(cSomme)

lC = (cSomme - lE) * 100



' on récupère les centimes au dessus de 0 ou 5

Dim lSupp As Long

lSupp = lC Mod 5



' on ajoute en vérifiant qu'on ne dépasse pas l'unité

lC = lC + 5 - lSupp

If lC = 100 Then

lE = lE + 1

lC = 0

End If



' on rassemble les sommes (attention division par 0)

If lC <> 0 Then

cSomme = lE + (lC / 100)

Else

cSomme = lE

End If

On Error GoTo 0 '*FGE*

Exit Function



ErrHandler:

Debug.Print Err.Number & " : " & Err.Description

Err.Clear

cSomme = 0

GetArrondSupp = False

End Function





<small> Coloration
syntaxique automatique [AFCK]</small>











++

PCPT [AFCK]
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
20 déc. 2005 à 04:20
On Error GoTo 0 '*FGE*

GetArrondSupp = True '* à ajouter ^^

Exit Function
0
Rejoignez-nous