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

Jak rychle převést čísla na anglická slova v aplikaci Excel?

Pokud máte v listu sloupec číselných hodnot a nyní je musíte převést na ekvivalentní anglická slova nebo anglická měnová slova, jak ukazuje následující snímek obrazovky. Zde budu mluvit o tom, jak rychle a snadno změnit čísla na anglická slova.

Převádějte čísla na anglická slova pomocí funkce definované uživatelem

Převádějte čísla na slova měn pomocí funkce definované uživatelem

Konvertujte čísla na slova měny pomocí užitečné funkce


Převádějte čísla na anglická slova pomocí funkce definované uživatelem

Neexistují žádné funkce nebo vzorce, které vám pomohou vyřešit tento úkol přímo v aplikaci Excel, ale můžete jej vytvořit pomocí funkce definované uživatelem. Proveďte prosím následující kroky:

1. Podržte stisknuté tlačítko ALT + F11 klíče a otevře se Okno Microsoft Visual Basic pro aplikace.

2, klikněte Vložit > Modula vložte následující kód do Okno modulu.

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. Uložte a zavřete tento kód a vraťte se do listu, do prázdné buňky zadejte tento vzorec = NumberstoWords (A2)( A2 je buňka, kterou chcete převést číslo na anglické slovo), viz screenshot:

4. Pak stiskněte tlačítko vstoupit klíč a vyberte buňku C2 a poté přetáhněte úchyt výplně do rozsahu, ve kterém chcete tento vzorec obsahovat. Všechny číselné hodnoty byly převedeny na odpovídající anglická slova.

Poznámka: Tento kód funguje pouze pro celočíselná čísla, ale nevztahuje se na desetinná čísla.


Převádějte čísla na slova měn pomocí funkce definované uživatelem

Chcete-li převést čísla na anglická slova měny, měli byste použít níže uvedený kód VBA.

1. Podržte stisknuté tlačítko ALT + F11 klíče a otevře se Okno Microsoft Visual Basic pro aplikace.

2, klikněte Vložit > Modula vložte následující kód do Okno modulu.

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. Uložte tento kód a vraťte se do listu, do prázdné buňky zadejte tento vzorec = SpellNumberToEnglish (A2)( A2 je buňka, kterou chcete převést číslo na anglické slovo měny), a pak přetáhněte popisovač výplně dolů do buněk, na které chcete použít tento vzorec, všechna čísla byla vysvětlena do anglických měnových slov, viz screenshot:


Konvertujte čísla na slova měny pomocí užitečné funkce

Výše uvedený kód je pro začátečníky aplikace Excel poněkud nepříjemný, zde představím užitečnou funkci, Kutools pro Excel's Čísla na slovaPomocí tohoto nástroje můžete čísla rychle vysvětlit do anglických nebo měnových slov.

Tip:Použít toto Čísla na slova funkce, za prvé, měli byste si stáhnout Kutools pro Excela poté tuto funkci rychle a snadno aplikujte.

Po instalaci Kutools pro Excel, udělejte prosím toto:

1. Vyberte seznam čísel, která chcete převést, a klikněte na Kutools > Obsah > Čísla na slova, viz screenshot:

2. V Čísla na slova měny dialoge box, zkontrolujte Angličtina možnost z nabídky Jazyky seznamu a potom klepněte na Ok tlačítko, uvidíte, že všechna čísla byla vysvětlena do anglických měnových slov:

Tipy: Pokud chcete získat anglická slova, zkontrolujte prosím Nepřevedeno na měnu zaškrtávací políčko z možnosti sekce, viz screenshoty:

Klikněte a stáhněte si Kutools pro Excel a bezplatnou zkušební verzi hned teď!


Nejlepší kancelářské nástroje produktivity

Kutools pro Excel řeší většinu vašich problémů a zvyšuje vaši produktivitu o 80%

  • Opakované použití: Rychle vložte složité vzorce, grafy a cokoli, co jste dříve používali; Šifrovat buňky s heslem; Vytvořte seznam adresátů a posílat e-maily ...
  • Super Formula Bar (snadno upravit více řádků textu a vzorce); Rozložení pro čtení (snadno číst a upravovat velké množství buněk); Vložit do filtrovaného rozsahu...
  • Sloučit buňky / řádky / sloupce bez ztráty dat; Rozdělit obsah buněk; Zkombinujte duplicitní řádky / sloupce... Zabraňte duplicitním buňkám; Porovnat rozsahy...
  • Vyberte možnost Duplikovat nebo Jedinečný Řádky; Vyberte prázdné řádky (všechny buňky jsou prázdné); Super hledání a fuzzy hledání v mnoha sešitech; Náhodný výběr ...
  • Přesná kopie Více buněk beze změny odkazu na vzorec; Automaticky vytvářet reference do více listů; Vložte odrážky, Zaškrtávací políčka a další ...
  • Extrahujte text, Přidat text, Odebrat podle pozice, Odebrat mezeru; Vytváření a tisk mezisoučtů stránkování; Převod mezi obsahem buněk a komentáři...
  • Super filtr (uložit a použít schémata filtrů na jiné listy); Rozšířené řazení podle měsíce / týdne / dne, frekvence a dalších; Speciální filtr tučnou kurzívou ...
  • Kombinujte sešity a pracovní listy; Sloučit tabulky na základě klíčových sloupců; Rozdělte data do více listů; Dávkový převod xls, xlsx a PDF...
  • Více než 300 výkonných funkcí. Podporuje Office / Excel 2007-2019 a 365. Podporuje všechny jazyky. Snadné nasazení ve vašem podniku nebo organizaci. Kompletní funkce 30denní bezplatná zkušební verze. 60denní záruka vrácení peněz.
karta kte 201905

Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci

  • Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
  • Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
  • Zvyšuje vaši produktivitu o 50% a omezuje stovky kliknutí myší každý den!
officetab dno
Komentáře (61)
Zatím žádné hodnocení. Buďte první, kdo ohodnotí!
Tento komentář byl moderátorem webu minimalizován
Ahoj, dobré ránoAhoj.. Dobré ráno.. Rád vás poznávám.
Tento komentář byl moderátorem webu minimalizován
tento kód nefunguje
Tento komentář byl moderátorem webu minimalizován
Pane, jak mohu převést čísla na slova s ​​posledním slovem "Pouze"?
Tento komentář byl moderátorem webu minimalizován
problém vyřešen?????
Tento komentář byl moderátorem webu minimalizován
Musíte přidat ještě jeden další vzorec do jiného sloupce
="Rs."&""&F6&"Pouze"&"."
Tento komentář byl moderátorem webu minimalizován
co když číslo má (.) jako 150.75 nebo 3.35? prosím pomozte díky...
Tento komentář byl moderátorem webu minimalizován
Děkujeme za vaši laskavou podporu při vytváření vzorce. Můžete nám prosím sdělit, zda potřebujeme přidat název měny... jako saúdské rijály nebo britské libry.
Tento komentář byl moderátorem webu minimalizován
Například převedeme 4000 na slovo „čtyři tisíce“, chci to přeložit jako „Saúdští rijálové pouze čtyři tisíce“, takže ve vzorci chybí „Saúdští rijálové a pouze“
Prosím pomozte
Tento komentář byl moderátorem webu minimalizován
Výše uvedený vzorec v modulu je opakován a zkopírován z webových stránek společnosti Microsoft.

Podívejte se prosím na původní odkaz a sledujte Microsoft Update..

https://support.microsoft.com/en-in/help/213360/how-to-convert-a-numeric-value-into-english-words-in-excel
Tento komentář byl moderátorem webu minimalizován
Vážení, tento kód v tomto řádku zobrazuje chybu syntaxe
Cents = GetTens(Left(Mid(MyNumber, DesetinPlace + 1) &_"00", 2))

můžete mi pomoci ..?? Odpovězte mi co nejdříve
Tento komentář byl moderátorem webu minimalizován
PŘIDEJTE SLOVO A MEZI SLOVA. Sto čtyřicet tisíc, pět set dvacet šest místo Sto čtyřicet tisíc pět set dvacet šest. Věta nemusí být dobře pochopena, protože není správná angličtina.
Tento komentář byl moderátorem webu minimalizován
tento kód nefunguje trvale ...pokud zavřeme a otevřeme list, nefunguje
Tento komentář byl moderátorem webu minimalizován
Uložte soubor jako "Sešit s podporou maker" a povolte makra, když jej otevřete
Tento komentář byl moderátorem webu minimalizován
díky moc za kód
Tento komentář byl moderátorem webu minimalizován
Například převedeme 2500 na slovo „Dva tisíce pět set“, chci to přeložit jako „Pouze dva tisíce pět set“, takže ve vzorci chybí „Pouze“
Prosím pomozte
Tento komentář byl moderátorem webu minimalizován
použijte =CONCATENATE(ČíslaSlova(A1)," Pouze")
Tento komentář byl moderátorem webu minimalizován
Opravdu díky drahoušku, tvůj vzorec byl perfektní, dobrý, Alláh ti žehnej.
Pozdravy.
Tento komentář byl moderátorem webu minimalizován
lakh crore není ve vzorci. Pomozte mi laskavě.
Tento komentář byl moderátorem webu minimalizován
Například převedeme 2500 na slovo „Dva tisíce pět set“, chci to přeložit jako „Dva tisíce pět set & centů padesát pouze“, takže můžete mi prosím pomoci
Tento komentář byl moderátorem webu minimalizován
Nerozumím centům... moje částka je 123.50 a mám "sto dvacet tři"... zkopíroval jsem celý vzorec, prosím pomozte
Tento komentář byl moderátorem webu minimalizován
A co miliony a miliony
Tento komentář byl moderátorem webu minimalizován
Díky moc
Tento komentář byl moderátorem webu minimalizován
POKUTA. Ale omlouvám se, že tento vzorec NEFUNGUJE trvale... Zavřel jsem sešit na polední přestávku. Po obědě jsem soubor otevřel, ale vzorec nefungoval. zobrazuje se chyba jako #NAME?. Prosím o intimní řešení.
Tento komentář byl moderátorem webu minimalizován
Díky


Funguje to! :)
Tento komentář byl moderátorem webu minimalizován
tam je chyba, když je moje částka "618475" říká "šest set osmnáct tisíc čtyři sta sedmdesát pět" místo "šest lac osmnáct tisíc čtyři sta sedmdesát pět".
Tento komentář byl moderátorem webu minimalizován
Mám stejný problém
Tento komentář byl moderátorem webu minimalizován
To není problém, jde o formát psaní slovy
Tento komentář byl moderátorem webu minimalizován
Děkuji extendOfficea
Zatím zde nejsou žádné komentáře
Načíst další
Zanechat své připomínky
Odesílání jako host
×
Ohodnoťte tento příspěvek:
0   Postavy
Doporučená umístění