Il y a des moments où vous devez épeler les nombres. Par exemple, vous voudrez peut-être épeler «1234» par «mille deux cent trente-quatre».

Word n’a pas de fonction intégrée qui effectuera la conversion pour vous, il vous reste donc à créer une macro qui gérera la conversion.

La macro suivante, BigCardText, convertira tout nombre compris entre 0 et 999 999 999. Pour l’utiliser, placez simplement le point d’insertion soit dans le nombre que vous souhaitez convertir, soit juste à droite du nombre (s’il s’agit d’un seul chiffre).

Sub BigCardText()

Dim sDigits As String     Dim sBigStuff As String

sBigStuff = ""



' Select the full number in which the insertion point is located     Selection.MoveLeft Unit:=wdWord, Count:=1, Extend:=wdMove     Selection.MoveRight Unit:=wdWord, Count:=1, Extend:=wdExtend

' Store the digits in a variable     sDigits = Trim(Selection.Text)



If Val(sDigits) > 999999 Then         If Val(sDigits) <= 999999999 Then             sBigStuff = Trim(Int(Str(Val(sDigits) / 1000000)))

' Create a field containing the big digits and             ' the cardtext format flag             Selection.Fields.Add Range:=Selection.Range, _               Type:=wdFieldEmpty, Text:="= " + sBigStuff + " \* CardText", _               PreserveFormatting:=True

' Select the field and copy it             Selection.MoveLeft Unit:=wdWord, Count:=1, Extend:=wdExtend             sBigStuff = Selection.Text & " million "

sDigits = Right(sDigits, 6)

End If     End If     If Val(sDigits) <= 999999 Then         ' Create a field containing the digits and the cardtext format flag         Selection.Fields.Add Range:=Selection.Range, _           Type:=wdFieldEmpty, Text:="= " + sDigits + " \* CardText", _           PreserveFormatting:=True

' Select the field and copy it         Selection.MoveLeft Unit:=wdWord, Count:=1, Extend:=wdExtend         sDigits = sBigStuff & Selection.Text

' Now put the words in the document         Selection.TypeText Text:=sDigits         Selection.TypeText Text:=" "

Else         MsgBox "Number too large", vbOKOnly     End If End Sub

Lorsque vous utilisez la macro, assurez-vous que le nombre que vous convertissez ne contient pas d’informations superflues, telles que des signes dollar ou des virgules. Lorsque vous exécutez BigCardText, la macro vérifie si le nombre sélectionné est supérieur à un million. Si tel est le cas, cela fonctionne d’abord sur la partie supérieure à un million, en la convertissant en mots. Ensuite, la valeur inférieure à un million est convertie. Le libellé final et complet est assemblé et collé dans le document, prêt à être utilisé.

_Note: _

Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites WordTips), j’ai préparé une page spéciale qui comprend des informations utiles.

lien: / wordribbon-WordTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur].

WordTips est votre source pour une formation Microsoft Word rentable.

(Microsoft Word est le logiciel de traitement de texte le plus populaire au monde.) Cette astuce (7755) s’applique à Microsoft Word 2007, 2010, 2013, 2016, 2019 et Word dans Office 365. Vous pouvez trouver une version de cette astuce pour le ancienne interface de menu de Word ici:

link: / word-Converting_Numbers_to_Text [Conversion de nombres en texte].