Come convertire i numeri in parole in Excel

  • Condividi Questo
Michael Brown

In questo articolo vi mostrerò due modi rapidi e gratuiti per convertire i numeri di valuta in parole inglesi in Excel 2019, 2016, 2013 e altre versioni.

Microsoft Excel è un ottimo programma per calcolare questo e quello. È stato inizialmente sviluppato per elaborare grandi serie di dati, ma permette anche di creare documenti contabili come fatture, valutazioni o bilanci in modo rapido ed efficace.

Nei documenti di pagamento più o meno solidi è necessario duplicare i valori numerici con la loro forma verbale. È molto più difficile falsificare i numeri dattiloscritti che quelli scritti a mano. Qualche truffatore può cercare di far passare 8000 per 3000, mentre è quasi impossibile sostituire segretamente "tre" con "otto".

Quindi non basta convertire i numeri in parole in Excel (ad esempio 123,45 in "centoventitré, quarantacinque"), ma è necessario scrivere dollari e centesimi (ad esempio 29,95 dollari come "ventinove dollari e novantanove centesimi"), sterline e pence per GBP, euro e centesimi per EUR, ecc.

Anche le ultime versioni di Excel non dispongono di uno strumento integrato per l'ortografia dei numeri, per non parlare delle versioni precedenti. Ma è proprio in questi casi che Excel è davvero ottimo: è sempre possibile migliorarne le funzionalità utilizzando le formule in tutti i loro

combinazioni, macro VBA o componenti aggiuntivi di terze parti.

Di seguito sono riportati due modi per convertire i numeri da cifre a parole

    E, eventualmente, potrebbe essere necessario convertire Parole in Numeri in Excel.

    Nota: se si sta cercando l'opzione conversione da numero a testo Se volete che Excel veda il vostro numero come testo, è una cosa un po' diversa. Per questo, potete usare la funzione TESTO o altri modi descritti in Come trasformare i numeri in testo in Excel.

    Macro VBA SpellNumber per convertire i numeri in parole

    Come ho già detto, Microsoft non voleva aggiungere uno strumento per questo compito. Tuttavia, quando ha visto quanti utenti ne avevano bisogno, ha creato e pubblicato sul suo sito web la speciale macro VBA. La macro fa ciò che il suo nome SpellNumber suggerisce. Tutte le altre macro in cui mi sono imbattuto sono basate sul codice Microsoft.

    La macro è citata come "formula del numero ortografico", ma non si tratta di una formula, bensì di una funzione macro, o per essere più precisi Funzione definita dall'utente di Excel (UDF).

    L'opzione ortografica è in grado di scrivere dollari e centesimi. Se si ha bisogno di una valuta diversa, si può cambiare " dollaro " e " centesimo " con il nome del proprio interlocutore.

    Se non siete esperti di VBA, di seguito troverete una copia del codice. Se non volete o non avete tempo di risolvere questo problema, utilizzate questa soluzione.

    1. Aprite la cartella di lavoro in cui dovete scrivere i numeri.
    2. Premete Alt+F11 per aprire la finestra dell'editor di Visual Basic.
    3. Se sono aperti più libri, verificare che la cartella di lavoro necessaria sia attiva utilizzando l'elenco dei progetti nell'angolo superiore sinistro dell'editor (uno degli elementi della cartella di lavoro è evidenziato in blu).
    4. Nel menu dell'editor andate su Inserire - Modulo .
    5. Dovrebbe apparire una finestra denominata YourBook - Module1. Selezionate tutto il codice nel riquadro sottostante e incollatelo in questa finestra.

      Option Explicit 'Main Function Function SpellNumber( ByVal MyNumber) Dim Dollars, Cents, Temp Dim DecimalPlace, Count ReDim Place(9) As String Place(2) = " Thousand " Place(3) = " Million " Place(4) = " Billion " Place(5) = " Trillion " MyNumber = Trim(Str(MyNumber)) DecimalPlace = InStr(MyNumber, "." ) If DecimalPlace> 0 Then Cents = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & _ "00", 2)) MyNumber = Trim(Left(MyNumber, DecimalPlace - 1)) End If Count = 1 Do While MyNumber "" Temp = GetHundreds(Right(MyNumber, 3)) If Temp "" Then Dollars = Temp & Place(Count) & Dollars If Len(MyNumber)> 3 Then MyNumber = Left(MyNumber, Len(MyNumber) - 3) Else MyNumber = "" End If Count = Count + 1 Loop Select Case Dollars Case "" Dollars = "Nessun Dollaro" Case "Uno" Dollars = "Uno".Dollaro" Caso Else Dollari = Dollari & " Dollari" Fine Select Caso Cents Caso "" Cents = " e nessun centesimo" Caso "Uno" Cents = " e un centesimo" Caso Else Cents = " e " & Cents & " Centesimi" Fine Select SpellNumber = Dollari & Cents Fine Function Funzione GetHundreds( ByVal MyNumber) Dim Result As String If Val(MyNumber) = 0 Then Exit Function MyNumber = Right( "000" & MyNumber,3) ' Convertire il posto delle centinaia. If Mid(MyNumber, 1, 1) "0" Then Result = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred " End If ' Convertire il posto delle decine e degli uni. If Mid(MyNumber, 2, 1) "0" Then Result = Result & GetTens(Mid(MyNumber, 2)) Else Result = Result & GetDigit(Mid(MyNumber, 3)) End If GetHundreds = Result End Function Function GetTens(TensText) Dim Result As String Result = ""' Nullare il valore della funzione temporanea. If Val(Left(TensText, 1)) = 1 Then ' Se il valore è compreso tra 10 e 19... Select Case Val(TensText) Case 10: Risultato = "Dieci" Case 11: Risultato = "Undici" Case 12: Risultato = "Dodici" Case 13: Risultato = "Tredici" Case 14: Risultato = "Quattordici" Case 15: Risultato = "Quindici" Case 16: Risultato = "Sedici" Case 17: Risultato = "Diciassette" Case 18: Risultato = "Diciotto" Case 19: Risultato ="Diciannove" Caso Else End Select Else ' Se il valore è compreso tra 20-99... Selezionare Caso Val(Left(TensText, 1)) Caso 2: Risultato = "Venti " Caso 3: Risultato = "Trenta " Caso 4: Risultato = "Quaranta " Caso 5: Risultato = "Cinquanta " Caso 6: Risultato = "Sessanta " Caso 7: Risultato = "Settanta " Caso 8: Risultato = "Ottanta " Caso 9: Risultato = "Novanta " Caso Else End Select Risultato = Risultato & GetDigit _ (Right(TensText, 1)) ' RecuperaFine If GetTens = Risultato Fine Funzione Funzione GetDigit(Cifra) Select Caso Val(Cifra) Caso 1: GetDigit = "Uno" Caso 2: GetDigit = "Due" Caso 3: GetDigit = "Tre" Caso 4: GetDigit = "Quattro" Caso 5: GetDigit = "Cinque" Caso 6: GetDigit = "Sei" Caso 7: GetDigit = "Sette" Caso 8: GetDigit = "Otto" Caso 9: GetDigit = "Nove" Caso Else : GetDigit = "" Fine Select Fine Funzione

    6. Premere Ctrl+S per salvare la cartella di lavoro aggiornata.

      È necessario salvare nuovamente la cartella di lavoro. Quando si cerca di salvare la cartella di lavoro con una macro, viene visualizzato il messaggio " Le seguenti funzioni non possono essere salvate in una cartella di lavoro senza macro "

      Fare clic su No. Quando viene visualizzata una nuova finestra di dialogo, scegliere l'opzione Salva con nome. Nel campo " Salva come tipo " scegliere l'opzione " Cartella di lavoro con macro di Excel ".

    Utilizzare la macro SpellNumber nei fogli di lavoro

    Ora è possibile utilizzare la funzione Numero dell'incantesimo nei documenti Excel. =Numero dell'incantesimo(A2) nella cella in cui si desidera ottenere il numero scritto in parole. Qui A2 è l'indirizzo della cella con il numero o l'importo.

    Qui potete vedere il risultato:

    Voilà!

    Copiare rapidamente la funzione SpellNumber in altre celle.

    Se è necessario convertire l'intera tabella, e non solo una cella, posizionare il cursore del mouse nell'angolo in basso a destra della cella con la formula finché non diventa una piccola croce nera:

    Fate clic con il tasto sinistro del mouse e trascinatelo sulla colonna per riempire la formula. Rilasciate il pulsante per vedere i risultati:

    Nota: tenere presente che se si utilizza SpellNumber con un collegamento a un'altra cella, la somma scritta verrà aggiornata ogni volta che il numero nella cella di origine viene modificato.

    È anche possibile inserire il numero direttamente nella funzione, ad esempio, =Numero di incantesimi(29.95) (29,95 - senza virgolette e senza il segno del dollaro).

    Svantaggi dell'utilizzo di macro per l'ortografia dei numeri in Excel

    Innanzitutto, è necessario conoscere VBA per modificare il codice in base alle proprie esigenze. È necessario incollare il codice per ogni cartella di lavoro in cui si intende modificarlo. Altrimenti, è necessario creare un file modello con macro e configurare Excel per caricare questo file a ogni avvio.

    Il principale svantaggio dell'utilizzo di una macro è che se si invia la cartella di lavoro a un'altra persona, questa non vedrà il testo a meno che la macro non sia integrata nella cartella di lavoro. E anche se è integrata, riceverà un avviso che segnala la presenza di macro nella cartella di lavoro.

    Sillabare i numeri in parole utilizzando uno speciale add-in

    Per gli utenti di Excel che hanno bisogno di sillabare rapidamente le somme, ma non hanno il tempo di imparare VBA o di trovare soluzioni alternative, abbiamo creato uno strumento speciale in grado di eseguire rapidamente la conversione da importo a parola per alcune valute popolari.

    Oltre a essere pronto per l'uso, lo strumento è davvero flessibile nella conversione degli importi in testo:

    • È possibile selezionare una delle seguenti valute: USD, EUR, GBP, BIT, AUD.
    • Scrivere la parte frazionaria in centesimi, centesimi o bitcents.
    • Scegliere qualsiasi caso di testo per il risultato: minuscolo, maiuscolo, titolo o frase.
    • Scrivere la parte decimale in modi diversi.
    • Includere o omettere i centesimi zero.

    Il componente aggiuntivo supporta tutte le versioni moderne, tra cui Excel 365, Excel 2029, Excel 2016, Excel 2013 ed Excel 2010. Non esitate a esplorare le altre funzionalità nella pagina iniziale del prodotto collegata sopra.

    E ora, vediamo questa utility di spelling dei numeri in azione:

    1. Selezionare una cella vuota per il risultato.
    2. Sul Ablebits nella scheda Utilità gruppo, fare clic su Numero dell'incantesimo .
    3. Nel Numero di fuoriuscita Nella finestra di dialogo visualizzata, configurare i seguenti elementi:
      • Per il Selezionare il numero selezionare la cella contenente l'importo che si vuole far scrivere come testo.
      • Specificare l'opzione desiderata attualmente , caso di lettera e il modo in cui il parte decimale del numero deve essere scritto.
      • Definire se includere o meno i centesimi zero.
      • Scegliere se inserire il risultato come valore o formula.
    4. Nella parte inferiore della finestra di dialogo, anteprima Se si è soddisfatti del modo in cui è stato scritto il numero, fare clic su Incantesimo Altrimenti, provare diverse impostazioni.

    L'immagine seguente mostra le scelte predefinite e il numero scritto in B2. Si noti una formula (più precisamente, una funzione definita dall'utente) nella barra della formula:

    E questa è una rapida dimostrazione di come si possano scrivere altre valute:

    Suggerimenti e note:

    • Perché il Numero dell'incantesimo Il componente aggiuntivo è stato progettato per gestire casi d'uso reali, come fatture e altri documenti finanziari, ma può convertire soltanto un numero alla volta.
    • Per sillabare un colonna di numeri inserire una formula nella prima cella, quindi copiare la formula verso il basso.
    • Se c'è la possibilità che i dati di origine possano cambiare in futuro, è meglio inserire il risultato come formula , in modo che si aggiorni automaticamente al variare del numero originale.
    • Quando si sceglie il risultato come formula un'opzione personalizzata funzione definita dall'utente (Se si intende condividere la cartella di lavoro con qualcuno che non ha installato Ultimate Suite, ricordarsi di sostituire le formule con i valori prima di condividerle.

    Conversione inversa: parole inglesi in numeri

    Francamente, non riesco a immaginare perché possa servirvi, ma non si sa mai... :)

    Sembra che l'MVP di Excel, Jerry Latham, abbia creato questa funzione definita dall'utente (UDF) come ParolePerDigitali Converte le parole inglesi in numeri.

    È possibile scaricare la cartella di lavoro WordsToDigits di Jerry per vedere il codice UDF. Qui troverete anche i suoi esempi di utilizzo della funzione.

    Potete vedere come funziona la funzione nel foglio " Voci di esempio "Se intendete utilizzare WordsToDigits nei vostri documenti, sappiate che questa funzione ha delle limitazioni. Ad esempio, non riconosce le frazioni inserite nelle parole. Troverete tutti i dettagli nella sezione " Informazioni ".

    Michael Brown è un appassionato di tecnologia dedicato con una passione per la semplificazione di processi complessi utilizzando strumenti software. Con oltre un decennio di esperienza nel settore tecnologico, ha affinato le sue competenze in Microsoft Excel e Outlook, nonché in Fogli Google e Documenti. Il blog di Michael è dedicato alla condivisione delle sue conoscenze e competenze con gli altri, fornendo suggerimenti e tutorial facili da seguire per migliorare la produttività e l'efficienza. Che tu sia un professionista esperto o un principiante, il blog di Michael offre spunti preziosi e consigli pratici per ottenere il massimo da questi strumenti software essenziali.