Nombres en lettres

Le
luchr
Bonjour à tous. Thierry m'a bien aidé, mais dans le code pour
convertir des nombres en lettres il reste quelques anomalies. 1100
convertit "mille cents" et 1020 convertit "mille vingts". Dans le code
ci-dessous dès que le nombre est + grand que 5 lettres il y a un "s"
or vingt ne prend un "s" que si il est précédé de 4 et cent ne prend
un "s" que si il est précédé de 2, 3, 4, 5, 6, 7, 8, ou 9. Si
quelqu'un peut m'aider MERCI.
Christian.

'traitement du "s" final pour vingt et cent et du "de" pour million
Select Case varlet
Case "cent", "ingt"
If Len(resultat) > 5 Then resultat = resultat + "s"
Case "lion", "ions"
resultat = resultat + " d'"
End Select
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Gilbert
Le #6340461
Bonjour

Avec cette modif ça fonctionne pour 1020 et 1100 et les dérivés, mais il y a
peut-être d'autres cas à vérifier.
Ajouter la déclaration de la variable Vartmp en début de fonction

'traitement du "s" final pour vingt et cent et du "de" pour million
Select Case varlet
Case "cent"
vartmp = Right$(resultat, 10)
If vartmp <> "mille cent" And vartmp <> "llion cent" And vartmp <>
"lions cent" Then
resultat = resultat + "s"
End If
Case "ingt"
If Right$(resultat, 12) = "quatre-vingt" Then
resultat = resultat + "s"
End If
Case "lion", "ions"
resultat = resultat + " de"
End Select

--
Cordialement,

Gilbert


news:
Bonjour à tous. Thierry m'a bien aidé, mais dans le code pour
convertir des nombres en lettres il reste quelques anomalies. 1100
convertit "mille cents" et 1020 convertit "mille vingts". Dans le code
ci-dessous dès que le nombre est + grand que 5 lettres il y a un "s"
or vingt ne prend un "s" que si il est précédé de 4 et cent ne prend
un "s" que si il est précédé de 2, 3, 4, 5, 6, 7, 8, ou 9. Si
quelqu'un peut m'aider MERCI.
Christian.

'traitement du "s" final pour vingt et cent et du "de" pour million
Select Case varlet
Case "cent", "ingt"
If Len(resultat) > 5 Then resultat = resultat + "s"
Case "lion", "ions"
resultat = resultat + " d'"
End Select
Willi2004
Le #6340411
Salut à tous et excusez mon intrusion qui ne vise qu'à apporter un petit
éclairci au sujet de ce qui suit:

- or vingt ne prend un "s" que si il est précédé de 4 et cent ne prend
- un "s" que si il est précédé de 2, 3, 4, 5, 6, 7, 8, ou 9.

En fait, il faut en plus que "vingt" et "cent" terminent l'écriture d'un
nombre pour prendre un "s".
Par exemple on écrira:
Deux cent trente cinq; Deux mille trois cents; Quatre-vingt cinq;
Quatre-vingts.


a écrit:
| Bonjour à tous. Thierry m'a bien aidé, mais dans le code pour
| convertir des nombres en lettres il reste quelques anomalies. 1100
| convertit "mille cents" et 1020 convertit "mille vingts". Dans le code
| ci-dessous dès que le nombre est + grand que 5 lettres il y a un "s"
| or vingt ne prend un "s" que si il est précédé de 4 et cent ne prend
| un "s" que si il est précédé de 2, 3, 4, 5, 6, 7, 8, ou 9. Si
| quelqu'un peut m'aider MERCI.
| Christian.
|
| 'traitement du "s" final pour vingt et cent et du "de" pour million
| Select Case varlet
| Case "cent", "ingt"
| If Len(resultat) > 5 Then resultat = resultat + "s"
| Case "lion", "ions"
| resultat = resultat + " d'"
| End Select
3stone
Le #6340401
Salut,

Bonjour à tous. Thierry m'a bien aidé, mais dans le code pour
convertir des nombres en lettres il reste quelques anomalies.
[...]


Cette fonction-ci ne te convient pas ?
http://www.3stone.be/access/articles.php?lng=fr&pg‚

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
luchr
Le #6340311
On 4 jan, 01:46, "3stone"
Salut,

Bonjour à tous. Thierry m'a bien aidé, mais dans le code pour
convertir des nombres en lettres il reste quelques anomalies.
[...]

Cette fonction-ci ne te convient pas ?http://www.3stone.be/access/articles .php?lng=fr&pg‚

--
A+
Pierre (3stone) Access MVP
Perso:http://www.3stone.be/
MPFA:http://www.mpfa.info/ (infos générales)


Merci à tous pour vos réponses. J'ai pris le code de Pierre sur 3stone
qui semble fonctionner parfaitement. Merci encore. Une épine en
moins...
A+
Christian

Publicité
Poster une réponse
Anonyme