Principe
Si vous êtes nostalgique des anciens nouveaux francs
, ou si vous souhaitez mettre à disposition de vos utilisateurs un convertisseur Francs/Euros ou Euros/Francs, voici qui devrait vous intéresser !

Le code Visual Basic
- 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, au début d'un module standard, sous la forme :
Public Const TXEURO = 6.55957
- 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 (CTRL + G dans Visual Basic Editor), et tapez :
? FrancsEuros(350) puis [ENTREE]
? EurosFrancs(120) puis [ENTREE]
Télécharger un convertisseur Euro
Si vous êtes fainéant, cliquez ici (c'est petit, hein ?
) 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).
Info
Vous aurez besoin d'un logiciel comme Winzip ou PowerArchiver pour décompacter la base. Pas la peine sur Windows XP : un compresseur/décompresseur compatible Zip est livré en standard.



Dans cet article...
Article mis à jour le 03/03/2009