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

Jak vysvětlit nebo převést čísla na anglická slova v aplikaci Excel?

Předpokládejme, že máte spoustu čísel cen a nyní je musíte převést nebo vysvětlit na textové řetězce. Například převést $ 123.55 na anglická slova sto dvacet tři dolarů a padesát pět centů. V aplikaci Excel neexistuje žádný efektivní prostředek k vyřešení tohoto problému, ale s použitím dlouhého a složitého kódu VBA. V tomto článku vám představím několik metod, jak se s tím vypořádat.

Vyhláskujte nebo převádějte čísla na anglická slova pomocí kódu VBA

Vyhláskujte nebo převádějte čísla na anglická slova pomocí programu Kutools pro Excel


Vyhláskujte nebo převádějte čísla na anglická slova pomocí kódu VBA

Následující dlouhý kód VBA vám pomůže vysvětlit čísla na textové řetězce. Postupujte následovně:

1. Podržte ALT + F11 klíče a otevře se Microsoft Visual Basic pro aplikace okno.

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

VBA: Vyslovte čísla měn na anglická slova v aplikaci Excel

Function SpellNumberToEnglish(ByVal pNumber)
'Updateby20131113
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. Poté kód uložte a vraťte se do listu, do sousední buňky B2 zadejte vzorec = SpellNumberToEnglish (A1), viz screenshot:

4. Pak stiskněte tlačítko vstoupit a vyberte buňku B2, pak přetáhněte úchyt výplně do rozsahu, který obsahuje tento vzorec, jak potřebujete. A všechna čísla měn byla vysvětlena anglickými slovy. Viz screenshot:

Poznámka: Jelikož se jedná o vzorce, potřebujete-li je zkopírovat a vložit, vložte je jako hodnoty.


Vyhláskujte nebo převádějte čísla na anglická slova pomocí programu Kutools pro Excel

Možná vás z výše uvedeného dlouhého kódu můžete udělat šílenství, nebojte se, zde vám mohu dát snadný a rychlý způsob, jak to vyřešit. S Kutools pro ExcelJe Čísla na slova funkce, můžete rychle a pohodlně převést čísla na textové řetězce.

Kutools pro Excel- Zahrnuje více než 300 užitečných nástrojů pro Excel. Plná funkce 30denní bezplatná zkušební verze, není nutná kreditní karta! Get It Now

1. Vyberte čísla rozsahu, která chcete vysvětlit, a klikněte Kutools > Obsah > Čísla na slova.
doc kutools číslo na slova 1

2. V rozbalovacím dialogovém okně zvolte Angličtina z Jazyky. Výsledky si můžete prohlédnout zprava Náhled Podokno. Viz snímek obrazovky:
doc kutools číslo na slova 2

3. Pak klikněte na tlačítko Ok or aplikovat. A všechna čísla cen byla převedena na textové řetězce v původním rozsahu.
doc kutools číslo na slova 3

Poznámka: Pokud chcete pouze převést čísla na anglická slova (nikoli měnu), zkontrolujte to Nepřevedeno na měnu checkbox.
doc kutools číslo na slova 3 doc kutools číslo na slova 3

Tato fantastická vlastnost Čísla na slova umí snadno přeložit čísla měny na text měny v angličtině nebo čínštině, jako je například překlad 32.01 na „Třicet dva dolarů a jeden cent“ nebo „叁拾 贰元 零 壹 分“. Vyzkoušejte zdarma!

Demo: Vyslovte čísla měn na anglická slova


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 (112)
Zatím žádné hodnocení. Buďte první, kdo ohodnotí!
Tento komentář byl moderátorem webu minimalizován
Je to vážně super. A Fount je snadné změnit slovo „dolar a poslat na rupie nebo jakoukoli jinou měnu, kterou chceme, tak, že zkopírujete vložení tresky na jakoukoli jinou novou stránku slova a nahradíte stejnou.
Tento komentář byl moderátorem webu minimalizován
Nedostávám tento vzorec do mého listu, můžete mi ho podrobně ukázat
Tento komentář byl moderátorem webu minimalizován
Děkujeme za vaše cenné informace. Musím zmínit, že je to Dirham a ne dolar, jak to mohu udělat. Děkuji předem
Tento komentář byl moderátorem webu minimalizován
Změňte prosím všechna slova ~dolar/dollars" a ~cent/cents" v kódu na název vaší měny.
Tento komentář byl moderátorem webu minimalizován
Zkoušel jsem to a fungovalo to pro mě... přejděte na modul, ctrl F a najděte >>> pak do find vložte Dollar a pak přejděte na nahradit (do stejného vyskakovacího pole) a vložte Dirham, bude to fungovat
Tento komentář byl moderátorem webu minimalizován
Problém se zaokrouhlováním čísel. Příklad je v mých obecných údajích 50.576, ale když je zaokrouhlím a stanem se 50.58, slova se nezmění/převedou podle nové hodnoty.
Tento komentář byl moderátorem webu minimalizován
Je to dobře fungující kód. Díky moc.
Tento komentář byl moderátorem webu minimalizován
Je to velmi dobrý vzorec, ale potřebuji slova v indických formátech
Tento komentář byl moderátorem webu minimalizován
plx mi ujasněte, jak to mohu vidět ve formátu měny mé země, tj. rupie místo dolarů a paisa místo centů.
Tento komentář byl moderátorem webu minimalizován
VÁŽENÝ PANE, je to velmi dobrý vzorec, ale potřebuji slova v indických formátech, PROSÍM O RADU
Tento komentář byl moderátorem webu minimalizován
je možné získat data jako 100. za desetinnou čárkou, například .100 odpověď křičet být jako 100 místo deseti
Tento komentář byl moderátorem webu minimalizován
díky za vzorec, je však možné získat slovo "dolar/rupie" jako předponu, tj. pouze jeden tisíc rupií a Paisas třicet. opravdu bych ocenil vaši odpověď.
Tento komentář byl moderátorem webu minimalizován
Jak mohu změnit částku v anglických slovech v indické měně
Tento komentář byl moderátorem webu minimalizován
zkopírujte výše uvedený kódový jazyk do listu se slovy nahraďte slovo „dolar“ výrazem „rupie“ Poté nahraďte slovo „centy“ výrazem „Paisa“ přejděte zpět do souboru aplikace Excel stiskněte alt+F11 vložit>>> modul >> vložit celý soubor slova do "end function" do .....=SpellNumberToEnglish(cellref) a můžete začít
Tento komentář byl moderátorem webu minimalizován
Dobrý den, pane, zkusil jsem uložit makro, jak jste uvedl výše. a funguje to dobře. ale když zavřu excel a otevřu nový list, nefunguje to. pls pomozte
Tento komentář byl moderátorem webu minimalizován
AHOJ JUS, MŮŽETE INSTALOVAT SPEL CURR ADDIN, MŮŽETE KONVEROVAT :) :) :lol:
Tento komentář byl moderátorem webu minimalizován
Díky moc, mohl byste mi prosím nyní říct, jak mohu získat indický formát (rupie)
Tento komentář byl moderátorem webu minimalizován
nefunguje. vyskakovací okno říká, že třída není zaregistrována. žádná možnost výběru jazyka. chybový kód
Tento komentář byl moderátorem webu minimalizován
wow skvělé pro věci, které jsem hledal týden. Funguje to skvěle. Díky moc
Tento komentář byl moderátorem webu minimalizován
je to opravdu užitečné, opravdu velké díky :-)
Tento komentář byl moderátorem webu minimalizován
THNX ATONE ZA TAKOVÉ TIPY
Tento komentář byl moderátorem webu minimalizován
Provedl jsem průzkum a nemohl jsem být schopen převést do pákistánského měnového systému, protože my lidé používáme tento formát. 1,00,00,00,00,000.00, ale Excel používá tento formát 1,000,000,000,000. a kód je v milionech a bilionech vzorce. Snažil jsem se změnit nedostatek, karor, arab a kharab místo milionů, miliard a bilionů, ale změní to jen slova a systém zůstane stejný. jako po změně to ukáže tohle. 100,000,000 XNUMX XNUMX by to mělo být sto milionů, ale ukáže se to sto milionů. Pokud mi někdo může pomoci, budu vám vděčný.
Tento komentář byl moderátorem webu minimalizován
Chci převést metrickou váhu z čísel na slova. např. 1. 10.50 metrických tun (MT) by se mělo psát jako "10 tun a 500 kg" 2. 12.345 MT = dvanáct tun a tři sta čtyřicet pět kilogramů Potřebuje alespoň 3 desetinná místa a 4 je ještě lepší. max 9999.9999 je jak chci. Může někdo prosím pomoci?
Tento komentář byl moderátorem webu minimalizován
Prosím, pokud jste našli cestu... napište mi prosím na islamrafat@gmail.com Díky
Tento komentář byl moderátorem webu minimalizován
Pokud jste našli, pošlete mi e-mail na islamrafat@gmail.com
Tento komentář byl moderátorem webu minimalizován
Fantastický. Díky Extend Office
Tento komentář byl moderátorem webu minimalizován
Díky za pomoc, jak to funguje :-)
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í