Transcrire un montant en toutes lettres

malek -  
Tehani_t Messages postés 245 Statut Membre -
Bonjour,

je voudrais Transcrire un montant chiffre en toutes lettres sur office 2007, je vous prie de bien vouloir m aider pour cela

salutation
Malek

5 réponses

  1. Mike-31 Messages postés 18205 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Salut,

    Regarde ce fichier, transcription par formule sinon il faut passer en VBA

    https://www.cjoint.com/?0kyiYHxsAmA
    0
  2. claude 0022508754894
     
    ok mon cher frere je crois pouvoir t'aider pour cette quetion qui m'a moi meme perturbé durant des années:
    -1) cela marche avec excel 2007
    -2) Vous devez afficher l'onglet Développeur ou exécuter le mode développeur pour écrire des macros, exécuter des macros enregistrées au préalable ou créer des applications à utiliser avec les programmes Microsoft Office.

    Procédez comme suit dans les programmes Microsoft Office suivants :

    -3) Cliquez sur le bouton Microsoft Office, puis sur Options Excel, en bas de la fenetre de dialogue.
    Cliquez sur Standard, puis activez la case à cocher Afficher l'onglet Développeur dans le ruban.
    Remarque Le ruban est un élément de l'Interface utilisateur Microsoft Office Fluent
    -4) clicker sur l'onglet developpeur et clicker ensuite sur visual basic et clicker avec le bouton droit de la souris pour creer un module où vous aller copier et coller la formule suivante:
    ------------------------------------------------------
    voici la formule qu'il faudra copier entierement et coller dans le module que vous avez creé dans visual basic
    --------------------------------------------------------

    Option Explicit
    Dim TabLettres

    Public Sub initiale()

    TabLettres = Array("zéro", "un", "deux", "trois", "quatre", "cinq", "six", _
    "sept", "huit", "neuf", "dix", "onze", "douze", "treize", "quatorze", _
    "quinze", "seize", "dix-sept", "dix-huit", "dix-neuf", "vingt", "vingt et un", _
    "vingt deux", "vingt trois", "vingt quatre", "vingt cinq", "vingt six", _
    "vingt sept", "vingt huit", "vingt neuf", "trente", "trente-un", "trente deux", _
    "trente trois", "trente quatre", "trente cinq", "trente six", "trente sept", "trente huit", _
    "trente neuf", "quarante", "quarante un", "quarante deux", "quarante trois", _
    "quarante quatre", "quarante cinq", "quarante six", "quarante sept", "quarante huit", _
    "quarante neuf", "cinquante", "cinquante-un", "cinquante deux", "cinquante trois", _
    "cinquante quatre", "cinquante cinq", "cinquante six", "cinquante sept", "cinquante huit", _
    "cinquante neuf", "soixante", "soixante-un", "soixante deux", "soixante trois", "soixante quatre", _
    "soixante cinq", "soixante six", "soixante sept", "soixante huit", "soixante neuf", "soixante dix", _
    "soixante onze", "soixante douze", "soixante treize", "soixante quatorze", "soixante quinze", _
    "soixante seize", "soixante-dix-sept", "soixante-dix-huit", "soixante-dix-neuf", "quatre-vingt", _
    "quatre-vingt un", "quatre-vingt deux", "quatre-vingt trois", "quatre-vingt quatre", "quatre-vingt cinq", _
    "quatre-vingt six", "quatre-vingt sept", "quatre-vingt huit", "quatre-vingt neuf", "quatre-vingt dix", _
    "quatre-vingt onze", "quatre-vingt douze", "quatre-vingt treize", "quatre-vingt quatorze", _
    "quatre-vingt quinze", "quatre-vingt seize", "quatre-vingt dix-sept", "quatre-vingt dix-huit", _
    "quatre-vingt dix-neuf")

    End Sub
    Function Centimes(nbre)
    Dim quotient, reste As Long
    Dim expqt, exprt As String
    quotient = nbre \ 100
    reste = nbre Mod 100
    Select Case quotient
    Case 0
    expqt = " "
    Case 1
    expqt = "cent"
    Case 2 To 9
    expqt = TabLettres(quotient) + " " + "cent"
    End Select
    If reste = 0 Then
    exprt = " "
    Else
    exprt = TabLettres(reste)
    End If
    Centimes = expqt + " " + exprt
    End Function
    Function ConversionEnLettre(nombre)
    Dim milld, milln, millr, restd, restn, restr As Long
    Dim expmld, expmln, expmlr, expcents, exptxt1, exptxt As String

    initiale
    milld = nombre \ 1000000000
    restd = nombre Mod 1000000000
    milln = restd \ 1000000
    restn = restd Mod 1000000
    millr = restn \ 1000
    restr = restn Mod 1000

    Select Case milld
    Case 0
    expmld = ""
    Case 1
    expmld = "un milliard"
    Case Else
    expmld = Centimes(milld) + " " + "milliards"
    End Select

    Select Case milln
    Case 0
    expmln = ""
    Case 1
    expmln = "un million"
    Case Else
    expmln = Centimes(milln) + " " + "millions"
    End Select
    Select Case millr
    Case 0
    expmlr = ""
    Case 1
    expmlr = "mille"
    Case Else
    expmlr = Centimes(millr) + " " + "mille"
    End Select
    expcents = Centimes(restr)
    exptxt1 = expmld + " " + expmln + " " + expmlr + " " + expcents + " " + "Francs CFA"
    exptxt = StrConv(exptxt1, vbProperCase)
    ConversionEnLettre = exptxt
    End Function
    Function ConvertMajuscule(chaine)
    Dim valeurMaj
    valeurMaj = UCase(chaine)
    ConvertMajuscule = valeurMaj
    End Function

    ------------------------------------------------------

    juste recompter les ligne du bas vers le haut de ce code ci haut où il est ecrit fcfa c'est à dire la devise, vous pouvez la changer dans la devise qui vous convient.
    -5) soit dans la cellue C2 vous avez par exemple 254021 et que dans la cellule B3 vous voulez ecrire en lettre ce qui est dans la cellule C2
    Vous procedez comme suis :
    =ConversionEnLettre(clickerC2)

    et votre formule est prete à fonctionner

    n'oublier surtout pas d'activer les macros..
    merci et je crois avoir bien repondu à ta préoccupation dans une expression toute simple à comprendre...
    0
  3. Mike-31 Messages postés 18205 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Re,

    Moi je voudrai comprendre, la discussion à été ouverte par malek qui veut
    "Transcrire un montant chiffre en toutes lettres sur office 2007",
    C'est Tehani_t qui répond et de plus je site "g pas excel 2007 mais merci pour l'info"

    Es ce que malek et Tehani_t est la même personne !

    Faudrait pas s'amuser à nous faire perdre notre temps, sur le premier post en réponse j'ai donné un fichier sans macro qui fonctionne sur toute les versions Excel, sur le deuxième post un fichier avec macro de Claude.
    La moindre des corrections est de répondre aux posts sinon les réponses risquent à manquer !
    --
    A+
    Mike-31

    Une période d'échec est un moment rêvé pour semer les graines du savoir.
    0
    1. Tehani_t Messages postés 245 Statut Membre 21
       
      non je ne suis pas malek !

      j'ai complètement zappé qu'il parlait d'office 2007. "Désolée, c'est Karémon pas ca !!!! me suis gourée" je m'étais basée sur office 2003

      et puis claude0022508754894 dis que ca marche sous office 2007
      0
  4. Mike-31 Messages postés 18205 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Re,

    Alors tu aurais du ouvrir ta propre discussion, chaque demande est particulière et dans l'intérêt de tous il est préférable de ne pas les mélanger

    en début de discussion j'ai donné ce fichier sans macro

    https://www.cjoint.com/?0bvu5PWUXRA

    en voilà un seconde avec macro

    https://www.cjoint.com/?0bvu8AAQho8
    0
    1. Tehani_t Messages postés 245 Statut Membre 21
       
      ok ok désolée
      0
    2. Tehani_t Messages postés 245 Statut Membre 21
       
      cool voila tu as répondu à sa question
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Tehani_t Messages postés 245 Statut Membre 21
     
    utilise la fonction =texte()
    -2
    1. Ricky38 Messages postés 5776 Date d'inscription   Statut Contributeur Dernière intervention   1 463
       
      Tehani_t
      regarde dans l'aide Excel car la fonction TEXTE() ne réponds pas du tout à son besoin ;)
      0
    2. Tehani_t Messages postés 245 Statut Membre 21
       
      ah oui c vrai désolée
      0
    3. Tehani_t Messages postés 245 Statut Membre 21
       
      Désolée, c'est Karémon pas ca !!!! me suis gourée
      0
    4. claude0022508754894
       
      je confirme encore une fois de plus que ça marche correctement et très bien d'ailleurs.
      sur excel 2007
      0
    5. Tehani_t Messages postés 245 Statut Membre 21
       
      g pas excel 2007 mais merci pour l'info !!
      0