Conversion de nombres en texte (Microsoft Word)
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]
.