Convertire i numeri in parole in Excel – Una guida completa
Convertire i numeri in parole scritte è spesso essenziale per relazioni finanziarie, documenti legali, fatture o assegni. Sebbene Excel non includa questa funzionalità nativamente, esistono diversi metodi affidabili per ottenerla: dalle funzioni integrate di Microsoft 365 alle soluzioni personalizzate con VBA, fino a potenti componenti aggiuntivi di terze parti. Questa guida completa ti illustra ogni approccio, ne evidenzia vantaggi e limitazioni e ti aiuta a scegliere la soluzione più adatta alle tue esigenze specifiche.

- Usa le nuove funzioni integrate (solo Microsoft 365)
- Usa una funzione definita dall’utente in VBA
- Usa Kutools per Excel con pochi clic
Metodi per convertire Converti in parole in Excel
Questa sezione presenta tre metodi efficaci per convertire le valute in parole in Excel. Scegli quello più adatto alla tua versione di Excel e alle tue esigenze.
Metodo 1: Utilizza le nuove funzioni integrate (solo Microsoft 365)
Se utilizzi Excel per Microsoft 365, puoi sfruttare la nuova funzione TRANSLATE per convertire facilmente le valute in parole, combinando in modo creativo diverse formule.
Come illustrato nell’immagine seguente, per convertire i numeri in valuta nell’intervallo A2:A5 in parole, puoi utilizzare la seguente formula per completare l’operazione.

- Seleziona una cella vuota (ad esempio B2) e inserisci la formula seguente.=PROPER(SUBSTITUTE(SUBSTITUTE(LOWER(TRANSLATE(BAHTTEXT(B9),«th»,«en»)),«baht»,«dollars»),«satang»,«cents»))
- Premi «Invio» e trascina il «quadratino di riempimento» verso il basso per applicare la formula alle altre righe.

Funzionamento della formula:
- BAHTTEXT: converte il numero in testo espresso in baht tailandesi (ad esempio, «หนึ่งบาทถ้วน»).
- TRANSLATE(...,«th»,«en»): traduce il testo da una lingua all’altra (richiede Microsoft 365). In questo caso, dal tailandese all’inglese.
- LOWER(): converte l’intera stringa in minuscolo per garantire coerenza.
- SUBSTITUTE(): sostituisce termini di valuta come «baht» e «satang» con quelli desiderati.
- PROPER(): trasforma in maiuscolo la prima lettera di ogni parola per una formattazione corretta.
Adatta ad altre valute:
La formula sopra riportata restituisce dollari statunitensi. È possibile personalizzarla per altre valute sostituendo le unità principali e secondarie:
- Sostituisci «dollari» con l’unità principale della tua valuta, ad esempio «sterline» per la sterlina britannica.
- Sostituisci «centesimi» con l’unità secondaria, ad esempio «pence» per la sterlina britannica.
La tabella seguente elenca le valute compatibili e le relative formule da utilizzare:
| Valuta | Sostituzione dell'unità principale | Sostituzione dell'unità secondaria | Formula di esempio (ipotizzando che il valore si trovi nella cella A2) |
|---|---|---|---|
| USD | dollari | centesimi | =PROPER(SUBSTITUTE(SUBSTITUTE(LOWER(TRANSLATE(BAHTTEXT(A2),«th»,«en»)),«baht»,«dollars»),«satang»,«cents»)) |
| GBP | sterline | pence | =PROPER(SUBSTITUTE(SUBSTITUTE(LOWER(TRANSLATE(BAHTTEXT(A2),«th»,«en»)),«baht»,«pounds»),«satang»,«pence»)) |
| EUR | euro | centesimi | =PROPER(SUBSTITUTE(SUBSTITUTE(LOWER(TRANSLATE(BAHTTEXT(A2),«th»,«en»)),«baht»,«euros»),«satang»,«cents»)) |
| MYR | ringgit | sen | =PROPER(SUBSTITUTE(SUBSTITUTE(LOWER(TRANSLATE(BAHTTEXT(A2),«th»,«en»)),«baht»,«ringgit»),«satang»,«sen»)) |
Limitazioni di questo metodo:
- Funziona esclusivamente in Excel per Microsoft 365, grazie alla funzione TRANSLATE().
- L’output dipende in larga misura dalla corretta formattazione della funzione BAHTTEXT().
- Questo metodo è ideale per le valute dotate sia di un'unità principale che di un'unità secondaria, come il baht thailandese (ad esempio, dollari e centesimi). Non è invece consigliato per valute che non seguono una struttura analoga.
Metodo 2: Usa una funzione definita dall’utente in VBA
In questa sezione scoprirai come utilizzare una funzione definita dall’utente (UDF) basata su VBA per convertire valori numerici in parole, con formato valuta inglese preimpostato sui dollari statunitensi (USD).
Passaggio 1: Inserisci il codice VBA
- Apri il foglio di lavoro in cui vuoi utilizzare questa funzionalità.
- Premi «Alt» + «F11» per aprire la finestra di Microsoft Visual Basic for Applications.
- Nell’editor, fai clic su «Inserisci» > «Modulo» e incolla il codice VBA seguente.
Function SpellNumberToEnglish(ByVal pNumber) 'Update by Extendoffice Dim Dollars, Cents arr = Array("", "", " Thousand ", " Million ", " Billion ", " Trillion ") pNumber = Trim(Str(pNumber)) xDecimal = InStr(pNumber, ".") If xDecimal > 0 Then Cents = GetTens(Left(Mid(pNumber, xDecimal + 1) & "00", 2)) pNumber = Trim(Left(pNumber, xDecimal - 1)) End If xIndex = 1 Do While pNumber <> "" xHundred = "" xValue = Right(pNumber, 3) If Val(xValue) <> 0 Then xValue = Right("000" & xValue, 3) If Mid(xValue, 1, 1) <> "0" Then xHundred = GetDigit(Mid(xValue, 1, 1)) & " Hundred " End If If Mid(xValue, 2, 1) <> "0" Then xHundred = xHundred & GetTens(Mid(xValue, 2)) Else xHundred = xHundred & GetDigit(Mid(xValue, 3)) End If End If If xHundred <> "" Then Dollars = xHundred & arr(xIndex) & Dollars End If If Len(pNumber) > 3 Then pNumber = Left(pNumber, Len(pNumber) - 3) Else pNumber = "" End If xIndex = xIndex + 1 Loop Select Case Dollars Case "" Dollars = "No Dollars" Case "One" Dollars = "One Dollar" Case Else Dollars = Dollars & " Dollars" End Select Select Case Cents Case "" Cents = " and No Cents" Case "One" Cents = " and One Cent" Case Else Cents = " and " & Cents & " Cents" End Select SpellNumberToEnglish = Dollars & Cents End Function Function GetTens(pTens) Dim Result As String Result = "" If Val(Left(pTens, 1)) = 1 Then Select Case Val(pTens) Case 10: Result = "Ten" Case 11: Result = "Eleven" Case 12: Result = "Twelve" Case 13: Result = "Thirteen" Case 14: Result = "Fourteen" Case 15: Result = "Fifteen" Case 16: Result = "Sixteen" Case 17: Result = "Seventeen" Case 18: Result = "Eighteen" Case 19: Result = "Nineteen" Case Else End Select Else Select Case Val(Left(pTens, 1)) Case 2: Result = "Twenty " Case 3: Result = "Thirty " Case 4: Result = "Forty " Case 5: Result = "Fifty " Case 6: Result = "Sixty " Case 7: Result = "Seventy " Case 8: Result = "Eighty " Case 9: Result = "Ninety " Case Else End Select Result = Result & GetDigit(Right(pTens, 1)) End If GetTens = Result End Function Function GetDigit(pDigit) Select Case Val(pDigit) Case 1: GetDigit = "One" Case 2: GetDigit = "Two" Case 3: GetDigit = "Three" Case 4: GetDigit = "Four" Case 5: GetDigit = "Five" Case 6: GetDigit = "Six" Case 7: GetDigit = "Seven" Case 8: GetDigit = "Eight" Case 9: GetDigit = "Nine" Case Else: GetDigit = "" End Select End Function
- Premi «Alt» + «Q» per tornare al foglio di lavoro.
Passaggio 2: Applica la funzione
- In una cella, inserisci la formula seguente e premi «Invio».=SpellNumberToEnglish(A2)
- Trascina quindi il quadratino di riempimento per estendere la formula alle altre righe, secondo le tue esigenze. I tuoi numeri verranno ora convertiti in lettere, ad esempio:

Adatta ad altre valute:
La funzione restituisce valori in «Dollaro/i» e «Cent(esim)o/i», codificati esclusivamente per l’USD. Per convertire numeri in altre valute, ad esempio la «Sterlina britannica», devi modificare manualmente le unità principali e secondarie nelle righe di codice seguenti.

Salva la cartella di lavoro come file con macro
Per impostazione predefinita, le funzioni VBA non vengono conservate a meno che la cartella di lavoro non venga salvata come cartella con macro:
- Premi «Ctrl» + «S» per salvare.
- E seleziona il pulsante «Torna indietro» nel messaggio popup relativo alle macro.Nota: se il popup mostra solo «Sì», «No» e «Guida», fai clic su «No».

- Nella finestra «Salva con nome».
- Scegli una posizione in cui salvare il file.
- Seleziona «Cartella di lavoro con macro di Excel (*.xlsm)» dall’elenco a discesa «Specifica formato di salvataggio».
- Fai clic su «Salva».

Limitazioni della funzione VBA SpellNumberToEnglish
- Questa funzione restituisce risultati esclusivamente in inglese.
- Non supporta altre lingue (ad esempio francese o tedesco) né gestisce strutture valutarie in cui l’unità monetaria precede il numero (come in «Rupees One Hundred» nell’inglese indiano).
- Se non salvi la cartella di lavoro come cartella con macro (.xlsm), la funzione andrà persa una volta chiuso Excel.
- Se salvata come file .xlsx standard, tutto il codice VBA verrà rimosso.
- Quando invii il file con macro ad altri utenti, all’apertura verrà visualizzato un avviso di sicurezza: «Le macro sono state disabilitate».
- Alcuni utenti potrebbero esitare ad abilitare le macro per timore di rischi per la sicurezza, decidendo così di non utilizzare il file.
- Eventuali modifiche ai termini o alla formattazione della valuta richiedono un intervento manuale sul codice VBA.
- Non è adatto agli utenti meno esperti di macro o scripting.
Metodo 3: Usa Kutools per Excel (nessuna formula o VBA necessari)
Se installi «Kutools per Excel», puoi sfruttare la sua funzione «Converti in parole» per trasformare numeri in inglese — sia in forma di valuta che in parole semplici — e in decine di altre lingue e valute, tra cui EUR, GBP, JPY e molte altre.
Se cerchi una soluzione facile da usare, senza codice e versatile per convertire Converti in parole in Excel, Kutools per Excel offre una funzione dedicata «Converti in parole» che supporta:
- Inglese (USD, GBP, EUR, ecc.)
- Decine di altre lingue e valute (ad esempio, Yen giapponese, Rupia indiana, Yuan cinese)
- Formato valuta o parole semplici (ad esempio, «Centootto» invece di «Centootto dollari»)
Passaggi per l’utilizzo:
- Seleziona le celle contenenti i numeri che desideri convertire.
- Seleziona «Kutools» > «Contenuto» > «Converti in parole».
- Nella finestra di dialogo «Numeri in parole di valuta», devi:
- Scegli la lingua e lo stile di valuta preferiti (ad esempio, Inglese – Stati Uniti per USD)
- Fai clic su «OK».

Opzionale: seleziona «Non convertire in valuta» se preferisci termini inglesi semplici (senza «dollari» o «centesimi»).
I numeri selezionati verranno ora convertiti automaticamente nelle corrispondenti parole di valuta, in base alle tue impostazioni.
Kutools per Excel– Potenzia Excel con oltre 300 strumenti essenziali, rendendo il tuo lavoro più veloce e semplice, e sfrutta le funzionalità basate sull’IA per un’elaborazione dati più intelligente e una maggiore produttività.Scaricalo ora
Operazione inversa: converti parole di valuta in numeri
Se hai un elenco di importi in valuta scritti in parole inglesi, ad esempio:
e desideri convertirli in numeri effettivi in Excel (ad esempio, 123,45), puoi utilizzare una funzione personalizzata definita dall’utente in VBA (UDF) come segue.

Passaggio 1: Apri l’editor VBA e inserisci il codice VBA
- Apri la tua cartella di lavoro Excel.
- Premi «Alt» + «F11» per aprire l’editor di Microsoft Visual Basic for Applications (VBA).
- Nell’editor VBA, fai clic su «Inserisci» > «Modulo».
- Copia e incolla il seguente codice VBA nella finestra vuota del modulo:
Function WordsToNumber(ByVal Txt As String) As Double 'Updated by Extendoffice Dim x As Object: Set x = CreateObject("Scripting.Dictionary") Dim units, tens, specials Dim part As String, parts() As String Dim total As Double, partial As Double, multiplier As Double Dim i As Long, word As String Txt = LCase(Trim(Txt)) Txt = Replace(Txt, ",", "") Txt = Replace(Txt, "-", " ") Txt = Replace(Txt, " and ", " ") Txt = Replace(Txt, " ", " ") ' Setup basic number words x.Add "zero", 0: x.Add "one", 1: x.Add "two", 2: x.Add "three", 3 x.Add "four", 4: x.Add "five", 5: x.Add "six", 6: x.Add "seven", 7 x.Add "eight", 8: x.Add "nine", 9: x.Add "ten", 10: x.Add "eleven", 11 x.Add "twelve", 12: x.Add "thirteen", 13: x.Add "fourteen", 14 x.Add "fifteen", 15: x.Add "sixteen", 16: x.Add "seventeen", 17 x.Add "eighteen", 18: x.Add "nineteen", 19: x.Add "twenty", 20 x.Add "thirty", 30: x.Add "forty", 40: x.Add "fifty", 50 x.Add "sixty", 60: x.Add "seventy", 70: x.Add "eighty", 80 x.Add "ninety", 90: x.Add "hundred", 100: x.Add "thousand", 1000 x.Add "million", 1000000: x.Add "billion", 1000000000 Dim dollarPart As String, centPart As String Dim dollarValue As Double, centValue As Double ' Split into dollars and cents If InStr(Txt, "dollar") > 0 Then dollarPart = Trim(Split(Txt, "dollar")(0)) End If If InStr(Txt, "cent") > 0 Then centPart = Trim(Split(Txt, "cent")(0)) If InStr(centPart, "dollar") > 0 Then centPart = Trim(Split(centPart, "dollar")(1)) End If End If dollarValue = ParseWordsToNumber(dollarPart, x) centValue = ParseWordsToNumber(centPart, x) WordsToNumber = dollarValue + centValue / 100 End Function Private Function ParseWordsToNumber(ByVal Txt As String, x As Object) As Double Dim parts() As String: parts = Split(Txt, " ") Dim total As Double, current As Double Dim i As Long, val As Double For i = 0 To UBound(parts) If x.exists(parts(i)) Then val = x(parts(i)) Select Case val Case 100 If current = 0 Then current = 1 current = current * val Case Is >= 1000 If current = 0 Then current = 1 total = total + current * val current = 0 Case Else current = current + val End Select End If Next i total = total + current ParseWordsToNumber = total End Function
Passaggio 2: Applica la funzione nel tuo foglio
- Premi «Alt» + «Q» per tornare subito a Excel.
- Inserisci questa formula in qualsiasi cella vuota e premi «Invio». Trascina il «Quadratino di riempimento» verso il basso per ottenere tutti gli altri risultati.=WordsToNumber(A2)

Conclusione
Convertire Converti in parole—o parole nuovamente in numeri—non è una funzionalità nativa di Excel, ma questa guida ha dimostrato che esistono diverse soluzioni pratiche a seconda delle proprie esigenze:
- Gli utenti Microsoft 365 possono sfruttare funzioni integrate avanzate come TRANSLATE per convertire importi in valuta in parole inglesi direttamente tramite formule, in particolare per le valute strutturate in «unità principale + unità secondaria».
- Le funzioni definite dall’utente in VBA offrono una maggiore flessibilità sia per la conversione di “Converti in parole” sia per il processo inverso (parole di valuta → valori numerici). Tuttavia, comportano rischi legati alla sicurezza delle macro e sono più adatte a utenti esperti di programmazione.
- Kutools per Excel offre l’opzione più semplice, multilingue e ricca di funzionalità: non richiede formule né codice e supporta decine di valute e lingue.
- Se devi riconvertire le parole in numeri, la soluzione VBA colma efficacemente questa lacuna, anche se potrebbe richiedere operazioni di pulizia—ad esempio, la rimozione delle virgole—per garantire risultati precisi.
Che tu stia preparando documenti finanziari, automatizzando la stampa degli assegni o semplicemente migliorando la presentazione dei dati, scegliere il metodo giusto ti permette di ottenere risultati professionali e precisi.
Migliori Strumenti per la Produttività in Office
Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un’efficienza mai vista prima.Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e Risparmia tempo.Clicca qui per ottenere la funzionalità di cui hai più bisogno...
Office Tab Porta l'interfaccia a schede in Office e rende il tuo lavoro molto più semplice
- Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede all’interno della stessa finestra, invece che in finestre separate.
- Aumenta la tua produttività del 50 % e risparmia centinaia di clic del mouse ogni giorno!
Tutti i componenti aggiuntivi di Kutools in un unico programma di installazione.
Kutools for Office è la suite che include componenti aggiuntivi per Excel, Word, Outlook e PowerPoint, oltre a Office Tab Pro: la soluzione ideale per i team che lavorano su diverse app di Office.
- Suite completa— componenti aggiuntivi per Excel, Word, Outlook e PowerPoint + Office Tab Pro
- Un unico programma di installazione, una sola licenza— configurazione in pochi minuti (pronto per MSI)
- Funziona meglio insieme— produttività ottimizzata tra le app di Office
- Prova gratuita di 30 giorni con tutte le funzionalità— nessuna registrazione, nessuna carta di credito
- Miglior rapporto qualità-prezzo— risparmia rispetto all’acquisto dei singoli componenti aggiuntivi






