Principe
La conversion Francs/Euros est la tarte à la crème du moment.
Allons-y, comme ça on n'en parle plus après :o)
[Dernières nouvelles : l'Euro est passé, préparez-vous au dollar ;-)]
Pour utiliser ce qui suit, vous avez besoin de savoir taper
du code Visual Basic dans un module Access, compiler du code, et exécuter du code.
Le code Visual Basic
Voici 3 procédures Visual Basic mettant en place les conversions Francs/Euros.
- La 1ère, znFix() (pourquoi ce nom là ?) permet de gérer les arrondis d'une manière
générale.
- La 2ème gère les conversions de FF en Euros
- La 3ème gère les conversion d'Euros en FF.
J'ai supposé que si on ne précise pas l'arrondi, celui-ci est fait sur 2
décimales.
D'autre part, une constante TXEURO (taux de l'euro) doit être déclarée sous la forme :
public const TXEURO = 6.55957
' --------------------------------------------------
' ARRONDI D'UN NOMBRE
' --------------------------------------------------
' Entrée : dbNombre <- Le nombre à arrondir
' intDigits <- Le nombre de chiffres après la virgule
'
Function znFix(dbNombre As Double, intDigits) As Double
Dim lngPow As Long, dbTemp as double
lngPow = 10 ^ intDigits
dbTemp = dbNombre * lngPow + 0.5
znFix = Int(dbTemp) / lngPow
End Function
' --------------------------------------------------
' CONVERSION FRANCS -> EUROS
' --------------------------------------------------
' Entrée : dbFrancs <- Un nombre en Francs
' intDigits <- Le nombre de chiffres après la virgule
' S'il est omis, ce chiffre vaut 2.
'
Function FrancsEuros(dbFrancs As Double, Optional intDigits) As Double
If IsMissing(intDigits) Then intDigits = 2
FrancsEuros = znFix(dbFrancs / TXEURO, intDigits)
End Function
' --------------------------------------------------
' CONVERSION EUROS -> FRANCS
' --------------------------------------------------
' Entrée : dbEuros <- Un nombre en Euros
' intDigits <- Le nombre de chiffres après la virgule
' S'il est omis, ce chiffre vaut 2.
'
Function EurosFrancs(dbEuros As Double, Optional intDigits) As Double
If IsMissing(intDigits) Then intDigits = 2
EurosFrancs = znFix(dbEuros * TXEURO, intDigits)
End Function
Comment tester ?
Faites apparaître la fenêtre de débogage, et
tapez :
? FrancsEuros(350) puis [ENTREE]
? EurosFrancs(120) puis [ENTREE]
Télécharger un convertisseur Euro !
Si vous
êtes fainéant, cliquez sur l'icône ci-contre pour télécharger une base Access 97 qui
regroupe les 3 fonctions ci-dessus dans un module nommé "mod Euro".
La base fournit par ailleurs un
magnifique (si, si) convertisseur Francs/Euros, qui donne un exemple d'utilisation du
module "mod Euro".
Vous y trouverez également une table "tbl Clients" et une requête "rqt
Francs vers Euros" qui montrent l'utilisation des fonctions de conversion dans une
requête (voir Calculs dans une requête).
Vous aurez besoin du logiciel Winzip pour décompacter la base.

|