Note: The other languages of the website are Google-translated. Back to English

Come convertire rapidamente i numeri in parole inglesi in Excel?

Se hai una colonna di valori numerici in un foglio di lavoro e ora devi convertirli alle loro parole inglesi equivalenti o parole in valuta inglese come mostrato nella seguente schermata. Qui parlerò di come cambiare i numeri in parole inglesi in modo rapido e semplice.

Converti i numeri in parole inglesi con la funzione definita dall'utente

Converti i numeri in parole valutarie con la funzione definita dall'utente

Converti i numeri in parole valutarie con una funzione utile


Converti i numeri in parole inglesi con la funzione definita dall'utente

Non ci sono funzionalità o formule che possono aiutarti a risolvere questa attività direttamente in Excel, ma puoi creare una funzione definita dall'utente per completarla. Si prega di fare con i seguenti passaggi:

1. Tenere premuto il tasto ALT + F11 chiavi e apre il file Finestra Microsoft Visual Basic, Applications Edition.

2. Clic inserire > Moduloe incolla il codice seguente nel file Finestra del modulo.

Function NumberstoWords(ByVal MyNumber)
'Update by Extendoffice
Dim xStr As String
Dim xFNum As Integer
Dim xStrPoint
Dim xStrNumber
Dim xPoint As String
Dim xNumber As String
Dim xP() As Variant
Dim xDP
Dim xCnt As Integer
Dim xResult, xT As String
Dim xLen As Integer
On Error Resume Next
xP = Array("", "Thousand ", "Million ", "Billion ", "Trillion ", " ", " ", " ", " ")
xNumber = Trim(Str(MyNumber))
xDP = InStr(xNumber, ".")
xPoint = ""
xStrNumber = ""
If xDP > 0 Then
xPoint = " point "
xStr = Mid(xNumber, xDP + 1)
xStrPoint = Left(xStr, Len(xNumber) - xDP)
For xFNum = 1 To Len(xStrPoint)
xStr = Mid(xStrPoint, xFNum, 1)
xPoint = xPoint & GetDigits(xStr) & " "
Next xFNum
xNumber = Trim(Left(xNumber, xDP - 1))
End If
xCnt = 0
xResult = ""
xT = ""
xLen = 0
xLen = Int(Len(Str(xNumber)) / 3)
If (Len(Str(xNumber)) Mod 3) = 0 Then xLen = xLen - 1
Do While xNumber <> ""
If xLen = xCnt Then
xT = GetHundredsDigits(Right(xNumber, 3), False)
Else
If xCnt = 0 Then
xT = GetHundredsDigits(Right(xNumber, 3), True)
Else
xT = GetHundredsDigits(Right(xNumber, 3), False)
End If
End If
If xT <> "" Then
xResult = xT & xP(xCnt) & xResult
End If
If Len(xNumber) > 3 Then
xNumber = Left(xNumber, Len(xNumber) - 3)
Else
xNumber = ""
End If
xCnt = xCnt + 1
Loop
xResult = xResult & xPoint
NumberstoWords = xResult
End Function
Function GetHundredsDigits(xHDgt, xB As Boolean)
Dim xRStr As String
Dim xStrNum As String
Dim xStr As String
Dim xI As Integer
Dim xBB As Boolean
xStrNum = xHDgt
xRStr = ""
On Error Resume Next
xBB = True
If Val(xStrNum) = 0 Then Exit Function
xStrNum = Right("000" & xStrNum, 3)
xStr = Mid(xStrNum, 1, 1)
If xStr <> "0" Then
xRStr = GetDigits(Mid(xStrNum, 1, 1)) & "Hundred "
Else
If xB Then
xRStr = "and "
xBB = False
Else
xRStr = " "
xBB = False
End If
End If
If Mid(xStrNum, 2, 2) <> "00" Then
xRStr = xRStr & GetTenDigits(Mid(xStrNum, 2, 2), xBB)
End If
GetHundredsDigits = xRStr
End Function
Function GetTenDigits(xTDgt, xB As Boolean)
Dim xStr As String
Dim xI As Integer
Dim xArr_1() As Variant
Dim xArr_2() As Variant
Dim xT As Boolean
xArr_1 = Array("Ten ", "Eleven ", "Twelve ", "Thirteen ", "Fourteen ", "Fifteen ", "Sixteen ", "Seventeen ", "Eighteen ", "Nineteen ")
xArr_2 = Array("", "", "Twenty ", "Thirty ", "Forty ", "Fifty ", "Sixty ", "Seventy ", "Eighty ", "Ninety ")
xStr = ""
xT = True
On Error Resume Next
If Val(Left(xTDgt, 1)) = 1 Then
xI = Val(Right(xTDgt, 1))
If xB Then xStr = "and "
xStr = xStr & xArr_1(xI)
Else
xI = Val(Left(xTDgt, 1))
If Val(Left(xTDgt, 1)) > 1 Then
If xB Then xStr = "and "
xStr = xStr & xArr_2(Val(Left(xTDgt, 1)))
xT = False
End If
If xStr = "" Then
If xB Then
xStr = "and "
End If
End If
If Right(xTDgt, 1) <> "0" Then
xStr = xStr & GetDigits(Right(xTDgt, 1))
End If
End If
GetTenDigits = xStr
End Function
Function GetDigits(xDgt)
Dim xStr As String
Dim xArr_1() As Variant
xArr_1 = Array("Zero ", "One ", "Two ", "Three ", "Four ", "Five ", "Six ", "Seven ", "Eight ", "Nine ")
xStr = ""
On Error Resume Next
xStr = xArr_1(Val(xDgt))
GetDigits = xStr
End Function

3. Salva e chiudi questo codice e torna al foglio di lavoro, in una cella vuota, inserisci questa formula = NumberstoWords (A2)( A2 è la cella in cui vuoi convertire il numero in una parola inglese), vedi screenshot:

4. Quindi premere Entra chiave e selezionare la cella C2, quindi trascinare la maniglia di riempimento sull'intervallo in cui si desidera contenere questa formula. Tutti i valori numerici sono stati convertiti nelle corrispondenti parole inglesi.

Note:: Questo codice funziona solo per i numeri interi ma non si applica ai numeri decimali.


Converti i numeri in parole valutarie con la funzione definita dall'utente

Se desideri convertire i numeri in parole in valuta inglese, devi applicare il codice VBA sottostante.

1. Tenere premuto il tasto ALT + F11 chiavi e apre il file Finestra Microsoft Visual Basic, Applications Edition.

2. Clic inserire > Moduloe incolla il codice seguente nel file Finestra del modulo.

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

3. Salva questo codice e torna al foglio di lavoro, in una cella vuota, inserisci questa formula = SpellNumberToEnglish (A2)( A2 è la cella in cui si desidera convertire il numero in una parola di valuta inglese), quindi trascinare il quadratino di riempimento verso il basso sulle celle a cui si desidera applicare questa formula, tutti i numeri sono stati scritti in parole di valuta inglese, vedere screenshot:


Converti i numeri in parole valutarie con una funzione utile

Il codice sopra è un po 'fastidioso per i principianti di Excel, qui introdurrò una funzione utile, Kutools for Excel's Numeri in parole, con questa utility puoi compitare rapidamente i numeri in parole inglesi o in parole valutarie.

Suggerimenti:Per applicare questo Numeri in parole in primo luogo, dovresti scaricare il file Kutools for Excele quindi applica la funzione in modo rapido e semplice.

Dopo l'installazione Kutools for Excel, per favore fai come questo:

1. Seleziona l'elenco di numeri che desideri convertire, quindi fai clic su Kutools > del Pacco > Numeri in parole, vedi screenshot:

2. Nel Numeri in parole di valuta casella di dialogo, controllare English opzione dal Le Lingue casella di riepilogo e quindi fare clic su Ok pulsante, vedrai che tutti i numeri sono stati scritti in parole in valuta inglese:

Suggerimenti:: Se vuoi ottenere le parole inglesi, controlla il file Non convertito in valuta casella di controllo dal Opzioni sezione, vedi screenshot:

Fai clic per scaricare Kutools per Excel e prova gratuita ora!


I migliori strumenti per la produttività in ufficio

Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività dell'80%

  • Riutilizzo: Inserisci rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Crittografa celle con password; Crea mailing list e invia email ...
  • Bar Super Formula (modifica facilmente più righe di testo e formula); Layout di lettura (leggi e modifica facilmente un gran numero di celle); Incolla su intervallo filtrato...
  • Unisci celle / righe / colonne senza perdere dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Impedisci celle duplicate; Confronta intervalli...
  • Seleziona Duplica o Unico Righe; Seleziona Righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molte cartelle di lavoro; Selezione casuale ...
  • Copia esatta Più celle senza modificare il riferimento della formula; Riferimenti di creazione automatica a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
  • Estrai testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare totali parziali di paging; Converti contenuto e commenti tra celle...
  • Super filtro (salva e applica schemi di filtri ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale in grassetto, corsivo ...
  • Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle in base a colonne chiave; Suddividi i dati in più fogli; Conversione in batch xls, xlsx e PDF...
  • Più di 300 potenti funzionalità. Supporta Office/Excel 2007-2021 e 365. Supporta tutte le lingue. Facile implementazione nella tua azienda o organizzazione. Funzionalità complete Prova gratuita di 30 giorni. Garanzia di rimborso di 60 giorni.
scheda kte 201905

Scheda Office porta l'interfaccia a schede a Office e semplifica notevolmente il lavoro

  • 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 della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la produttività del 50% e riduce ogni giorno centinaia di clic del mouse!
fondo officetab
Commenti (62)
Ancora nessuna valutazione. Puoi essere il primo a votare!
Questo commento è stato fatto dal moderatore sul sito
Ciao buon giornoCiao.. buongiorno.. è un piacere conoscerti.
Questo commento è stato fatto dal moderatore sul sito
questo codice non funziona
Questo commento è stato fatto dal moderatore sul sito
Signore, come posso convertire numerici in parole con l'ultima parola "Solo"?
Questo commento è stato fatto dal moderatore sul sito
problema risolto?????
Questo commento è stato fatto dal moderatore sul sito
Devi aggiungere un'altra formula aggiuntiva in un'altra colonna
="Rs."&""&F6&"Solo"&"."
Questo commento è stato fatto dal moderatore sul sito
che ne dici se il numero ha un (.) come 150.75 o 3.35? aiutatemi grazie...
Questo commento è stato fatto dal moderatore sul sito
Grazie per il vostro gentile supporto per la creazione della formula. Puoi dirci se dobbiamo aggiungere il nome della valuta... come riyal sauditi o sterline britanniche.
Questo commento è stato fatto dal moderatore sul sito
Ad esempio convertiamo 4000 nella parola "Quattromila", voglio tradurlo come "Solo quattromila riyal sauditi", quindi manca nella formula "Riyal sauditi e solo"
Per favore aiuto
Questo commento è stato fatto dal moderatore sul sito
La formula sopra menzionata nel modulo viene ripetuta e copiata dal sito Web Microsoft..

Si prega di vedere il collegamento originale e seguire Microsoft Update..

https://support.microsoft.com/en-in/help/213360/how-to-convert-a-numeric-value-into-english-words-in-excel
Questo commento è stato fatto dal moderatore sul sito
caro questo codice mostra un errore di sintassi in questa riga
Centesimi = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) &_"00", 2))

potete aiutarmi..??Rispondetemi il prima possibile
Questo commento è stato fatto dal moderatore sul sito
AGGIUNGI LA PAROLA E FRA PAROLE. Centoquarantamila, cinquecentoventisei invece di centoquarantamilacinquecentoventisei. La frase potrebbe non essere compresa bene in quanto non è un inglese corretto.
Questo commento è stato fatto dal moderatore sul sito
questo codice non funziona in modo permanente ...se chiudiamo e apriamo il foglio non funziona
Questo commento è stato fatto dal moderatore sul sito
Salva il file come "Cartella di lavoro abilitata per macro" e abilita le macro quando lo apri
Questo commento è stato fatto dal moderatore sul sito
grazie per molto per te sei codice
Questo commento è stato fatto dal moderatore sul sito
Ad esempio convertiamo 2500 nella parola "Duemilacinquecento", voglio tradurlo come "Solo duemilacinquecento", quindi manca nella formula "Solo"
Per favore aiuto
Questo commento è stato fatto dal moderatore sul sito
use =CONCATENATE(NumberstoWords(A1)," Only")
Questo commento è stato fatto dal moderatore sul sito
Davvero grazie cara, la tua formula era perfetta, buona, Allah ti benedica.
Saluti.
Questo commento è stato fatto dal moderatore sul sito
lakh crore non nella formula. Per favore aiutami.
Questo commento è stato fatto dal moderatore sul sito
Ad esempio convertiamo 2500 nella parola "Duemilacinquecento", voglio tradurlo come "solo duemilacinquecento e centesimi e cinquanta", quindi potresti aiutarmi per favore
Questo commento è stato fatto dal moderatore sul sito
Non sto scrivendo i centesimi... il mio importo è 123.50 e ho "centoventitré"... ho copiato tutta la formula, per favore aiutatemi
Questo commento è stato fatto dal moderatore sul sito
Che dire di lakh e crore
Questo commento è stato fatto dal moderatore sul sito
molte grazie
Questo commento è stato fatto dal moderatore sul sito
BENE. Ma mi spiace dire che questa formula NON funziona stabilmente... Ho chiuso la cartella di lavoro per la pausa pranzo. Dopo pranzo ho aperto il file ma la formula non funzionava. mostrando un errore come #NAME?. Gentilmente soluzioni intime per favore.
Questo commento è stato fatto dal moderatore sul sito
Grazie


Sta funzionando! :)
Questo commento è stato fatto dal moderatore sul sito
c'è un bug quando il mio importo è "618475" dice "seicentodiciottomilaquattrocentosettantacinque" invece di "sei lac diciottomilaquattrocentosettantacinque".
Questo commento è stato fatto dal moderatore sul sito
Ho lo stesso problema
Questo commento è stato fatto dal moderatore sul sito
Questo non è un problema, è un formato di scrittura a parole
Questo commento è stato fatto dal moderatore sul sito
Grazie extendOfficea
Non ci sono ancora commenti pubblicati qui
Carica Altre
Lasciate i vostri commenti
Pubblicazione come ospite
×
Valuta questo post:
0   Personaggi
Posizioni suggerite

Seguici

Copyright © 2009 - www.extendoffice.com. | Tutti i diritti riservati. Offerto da ExtendOffice, | Mappa del sito
Microsoft e il logo Office sono marchi o marchi registrati di Microsoft Corporation negli Stati Uniti e / o in altri paesi.
Protetto da Sectigo SSL