Innehållsförteckning
I den här artikeln visar jag dig två snabba och kostnadsfria sätt att konvertera valutatal till engelska ord i Excel 2019, 2016, 2013 och andra versioner.
Microsoft Excel är ett utmärkt program för att beräkna det ena och det andra. Det utvecklades ursprungligen för att bearbeta stora datamängder, men det gör det också möjligt att snabbt och effektivt skapa bokföringsunderlag som fakturor, utvärderingar eller balansräkningar.
I mer eller mindre solida betalningsdokument är det nödvändigt att kopiera numeriska värden med deras ordform. Det är mycket svårare att förfalska maskinskrivna siffror än de som skrivits för hand. En bedragare kan försöka göra 8000 av 3000, medan det är nästan omöjligt att i hemlighet ersätta "tre" med "åtta".
Du behöver alltså inte bara konvertera siffror till ord i Excel (t.ex. 123,45 till "etthundratjugotre fyrtiofem"), utan även stava dollar och cent (t.ex. 29,95 dollar som "tjugonio dollar och nittionio cent"), pund och pence för GBP, euro och eurocent för EUR osv.
Inte ens de senaste versionerna av Excel har ett inbyggt verktyg för att stava siffror, för att inte tala om tidigare versioner. Men det är då Excel är riktigt bra. Du kan alltid förbättra dess funktionalitet med hjälp av formler i alla dess
kombinationer, VBA-makron eller tillägg från tredje part.
Nedan hittar du två sätt att konvertera siffror från siffror till ord.
Och eventuellt kan du behöva konvertera ord till siffror i Excel.
Observera: Om du letar efter omvandling av nummer till text Om du vill att Excel ska se siffran som text är det en lite annorlunda sak. För detta kan du använda TEXT-funktionen eller några andra sätt som beskrivs i Hur du ändrar siffror till text i Excel.
SpellNumber VBA-makro för att konvertera siffror till ord
Som jag redan har nämnt ville Microsoft inte lägga till ett verktyg för den här uppgiften. Men när de såg hur många användare som behövde det skapade och publicerade de det speciella VBA-makrot på sin webbplats. Makrot gör vad namnet SpellNumber antyder. Alla andra makron som jag har stött på är baserade på Microsofts kod.
Du kan hitta makrot som nämns som "spellnumber formula", men det är inte en formel, utan en makrofunktion, eller för att vara mer exakt Excel Användardefinierad funktion (UDF).
Alternativet stavningsnummer kan skriva dollar och cent. Om du behöver en annan valuta kan du ändra " dollar " och " cent " med namnet på din en.
Om du inte är VBA-kunnig hittar du nedan en kopia av koden. Om du fortfarande inte vill eller inte har tid att lösa detta, använd den här lösningen.
- Öppna arbetsboken där du ska stava siffrorna.
- Tryck Alt+F11 för att öppna fönstret för Visual Basic-redigeraren.
- Om du har flera böcker öppna, kontrollera att den nödvändiga arbetsboken är aktiv med hjälp av listan över projekt i det övre vänstra hörnet av redigeraren (ett av arbetsbokselementen är markerat med blått).
- I redigeringsmenyn går du till Infoga -> Modul .
- Du bör se ett fönster som heter YourBook - Module1. Markera all kod i ramen nedan och klistra in den i detta fönster.
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 = "Inga dollar" Case "One" Dollars = "OneDollar" Case Else Dollars = Dollars & " Dollars" End Select Select Case Cents Case "" Cents = " och inga cent" Case "One" Cents = " och en cent" Case Else Cents = " och " & Cents & " Cents" End Select SpellNumber = Dollars & Cents End Function Function GetHundreds( ByVal MyNumber) Dim Result As String If Val(MyNumber) = 0 Then Exit Function MyNumber = Right( "000" & MyNumber,3) ' Konvertera hundratalsplatsen. If Mid(MyNumber, 1, 1) "0" Then Result = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred " End If ' Konvertera tiotals- och entalsplatsen. 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 = ""' Nollställ det tillfälliga funktionsvärdet. If Val(Left(TensText, 1)) = 1 Then ' Om värdet ligger mellan 10-19... Select Case Val(TensText) Case 10: Resultat = "Ten" Case 11: Resultat = "Eleven" Case 12: Resultat = "Twelve" Case 13: Resultat = "Thirteen" Case 14: Resultat = "Fourteen" Case 15: Resultat = "Fifteen" Case 16: Resultat = "Sixteen" Case 17: Resultat = "Seventeen" Case 18: Resultat = "Eighteen" Case 19: Resultat ="Nineteen" Case Else End Select Else Else ' Om värdet ligger mellan 20-99... Select Case Val(Left(TensText, 1)) Case 2: Resultat = "Twenty " Case 3: Resultat = "Thirty " Case 4: Resultat = "Forty " Case 5: Resultat = "Fifty " Case 6: Resultat = "Sixty " Case 7: Resultat = "Seventy " Case 8: Resultat = "Eighty " Case 9: Resultat = "Ninety " Case Else End Select Result = Result & GetDigit _ (Right(TensText, 1)) ' HämtarEnd If GetTens = Resultat End Function Function Function GetDigit(Digit) Select Case Val(Digit) Case 1: GetDigit = "Ett" Case 2: GetDigit = "Två" Case 3: GetDigit = "Tre" Case 4: GetDigit = "Fyra" Case 5: GetDigit = "Fem" Case 6: GetDigit = "Sex" Case 7: GetDigit = "Sju" Case 8: GetDigit = "Åtta" Case 9: GetDigit = "Nio" Case Else : GetDigit = "" End Select End Function
- Tryck Ctrl+S för att spara den uppdaterade arbetsboken.
Du måste spara arbetsboken på nytt. När du försöker spara arbetsboken med ett makro får du meddelandet " Följande funktioner kan inte sparas i en makrofri arbetsbok "
Klicka på Nej. När en ny dialogruta visas väljer du alternativet Spara som. I fältet " Spara som typ " välja alternativet " Arbetsbok med Excel-makroaktiverad arbetsbok ".
Använd Makro SpellNumber i dina kalkylblad
Nu kan du använda funktionen SpellNumber i dina Excel-dokument. Ange =SpellNummer(A2)
till den cell där du vill få siffran skriven i ord. A2 är adressen till cellen med siffran eller beloppet.
Här kan du se resultatet:
Voila!
Kopiera snabbt SpellNumber-funktionen till andra celler.
Om du behöver konvertera hela tabellen, inte bara en cell, placerar du muspekaren i det nedre högra hörnet av cellen med formeln tills den förvandlas till ett litet svart kryss:
Vänsterklicka och dra den över kolumnen för att fylla i formeln. Släpp knappen för att se resultatet:
Observera att om du använder SpellNumber med en länk till en annan cell kommer den skrivna summan att uppdateras varje gång som siffran i källcellen ändras.
Du kan också skriva in numret direkt i funktionen, till exempel, =SpellNumber(29.95)
(29,95 - utan citationstecken och dollartecken).
Nackdelar med att använda makro för att stava till siffror i Excel
Först och främst måste du kunna VBA för att ändra koden enligt dina behov. Du måste klistra in koden för varje arbetsbok där du planerar att ändra den. Annars måste du skapa en mallfil med makron och konfigurera Excel så att den laddas vid varje start.
Den största nackdelen med att använda ett makro är att om du skickar arbetsboken till någon annan kommer den personen inte att se texten om inte makron är inbyggd i arbetsboken. Och även om den är inbyggd kommer den att få en varning om att det finns makron i arbetsboken.
Stava siffror i ord med hjälp av ett särskilt tilläggsprogram
För Excel-användare som snabbt behöver stava summor men som inte har tid att lära sig VBA eller hitta lösningar har vi skapat ett specialverktyg som snabbt kan utföra konverteringen från belopp till ord för några populära valutor.
Förutom att verktyget är redo att användas är det mycket flexibelt när det gäller att konvertera mängder till text:
- Du kan välja en av följande valutor: USD, EUR, GBP, BIT, AUD.
- Stava bråkdelen i cent, pennies eller bitcents.
- Välj vilken typ av text som helst för resultatet: små bokstäver, versaler, titelfält eller satsbokstäver.
- Stava decimaldelen på olika sätt.
- Inkludera eller utelämna noll cent.
Tillägget stöder alla moderna versioner, inklusive Excel 365, Excel 2029, Excel 2016, Excel 2013 och Excel 2010. Utforska gärna andra funktioner på produktens hemsida som är länkad ovan.
Nu ska vi se hur det här verktyget för nummerstavning fungerar:
- Välj en tom cell för resultatet.
- På den Ablebits på fliken Verktyg grupp, klicka på Besvärjelse nummer .
- I Nummer på utsläppet I dialogfönstret som visas konfigurerar du följande saker:
- För Välj ditt nummer Välj den cell som innehåller det belopp som du vill få skrivet som text.
- Ange önskad för närvarande , bokstavsbokstäver och det sätt på vilket decimaldel av numret ska stavas.
- Ange om noll cent ska inkluderas eller inte.
- Välj om du vill infoga resultatet som ett värde eller en formel.
- Längst ner i dialogfönstret, förhandsgranskning resultatet. Om du är nöjd med hur ditt nummer är skrivet klickar du på Besvärjelse Annars kan du prova olika inställningar.
Skärmbilden nedan visar standardvalen och det stavade numret i B2. Lägg märke till en formel (närmare bestämt en användardefinierad funktion) i formellfältet:
Detta är en snabb demonstration av hur andra valutor kan anges:
Tips och anteckningar:
- Eftersom Besvärjelse nummer tillägget har utformats för att hantera verkliga användningsfall, t.ex. fakturor och andra finansiella dokument, kan det endast konvertera ett nummer i taget.
- För att stava ett kolumn med siffror , infoga en formel i den första cellen och kopiera sedan formeln nedåt.
- Om det finns en chans att dina källdata kan komma att ändras i framtiden är det bäst att infoga resultatet som en formel så att det uppdateras automatiskt när det ursprungliga numret ändras.
- När du väljer resultatet som en formel alternativ, en anpassad användardefinierad funktion (Om du planerar att dela din arbetsbok med någon som inte har Ultimate Suite installerad, kom ihåg att ersätta formler med värden innan du delar den.
Omvänd konvertering - engelska ord till siffror
Uppriktigt sagt kan jag inte föreställa mig varför du skulle behöva det. För säkerhets skull... :)
Det verkar som om Excel MVP, Jerry Latham, skapade en sådan Excel User defined function (UDF) som WordsToDigits Den omvandlar engelska ord till siffror.
Du kan ladda ner Jerrys arbetsbok WordsToDigits för att se UDF-koden. Här hittar du också hans exempel på hur man använder funktionen.
Du kan se hur funktionen fungerar på bladet " Exempel på inmatningar ", där du också kan skriva in dina egna exempel. Om du planerar att använda WordsToDigits i dina dokument ska du vara medveten om att denna funktion har begränsningar. Den känner till exempel inte igen bråk som skrivs in i ord. Du hittar alla detaljer på sidan " Information " ark.