Ynhâldsopjefte
Yn dit artikel sil ik jo twa rappe en fergese manieren sjen litte om falutanûmers te konvertearjen yn Ingelske wurden yn Excel 2019, 2016, 2013 en oare ferzjes.
Microsoft Excel is in geweldige programma om dit en dat te berekkenjen. It waard yn earste ynstânsje ûntwikkele om grutte dataarrays te ferwurkjen. It lit lykwols ek boekhâldkundige records lykas faktueren, evaluaasje of balâns fluch en effektyf meitsje.
Yn min of mear solide betellingsdokuminten is it nedich om numerike wearden te duplikearjen mei har wurdfoarm. It is folle dreger om typte nûmers te ferfalskjen as dy mei de hân skreaun binne. Guon oplichter kin besykje 8000 te meitsjen fan 3000, wylst it hast ûnmooglik is om "trije" temûk te ferfangen troch "acht".
Dus wat jo nedich hawwe is net allinich sifers omsette nei wurden yn Excel (bgl. 123.45 nei "hûndert trijeentweintich, fiifenfjirtich"), mar stavere dollars en sinten (bygelyks $29,95 as "njoggenentweintich dollar en njoggenennjoggentich sinten"), pûn en penny foar GBP, euro en eurosint foar EUR, ensfh.
Sels de lêste ferzjes fan Excel hawwe gjin ynboude ark foar it staverjen fan sifers, en net te hawwen oer eardere ferzjes. Mar dat is as Excel echt goed is. Jo kinne de funksjonaliteit altyd ferbetterje mei formules yn al har
kombinaasjes, VBA-makro's, of tafoegings fan tredden.
Hjirûnder fine jo twa manieren om nûmers te konvertearjen fan sifers oan wurden
En, mooglik, moatte jo miskienWurden konvertearje nei nûmers yn Excel
Opmerking. As jo op syk binne nei de getal nei tekst konverzje , wat betsjut dat jo wolle dat Excel jo nûmer as tekst sjocht, is it in bytsje oars. Hjirfoar kinne jo de TEKST-funksje brûke of in pear oare manieren dy't beskreaun binne yn Hoe kinne jo nûmers feroarje nei tekst yn Excel.
SpellNumber VBA-makro om sifers te konvertearjen nei wurden
Sa't ik al neamd haw , Microsoft woe gjin ark tafoegje foar dizze taak. Doe't se lykwols seagen hoefolle brûkers it nedich wiene, makken en publisearren se de spesjale VBA-makro op har webside. De makro docht wat syn namme SpellNumber suggerearret. Alle oare makro's dy't ik tsjinkaam binne basearre op de Microsoft-koade.
Jo kinne de makro fine dy't neamd wurdt as "spellnumber formule". It is lykwols gjin formule, mar in makrofunksje, of om krekter te wêzen Excel Meidogger definieare funksje (UDF).
De staveringsnûmeropsje is by steat om dollars en sinten te skriuwen. As jo in oare faluta nedich binne, kinne jo " dollar " en " sint " feroarje mei de namme fan jo ien.
As jo gjin VBA-savvy guy binne , hjirûnder fine jo in kopy fan de koade. As jo noch gjin tiid wolle of hawwe om dit út te sortearjen, brûk dan dizze oplossing.
- Iepenje it wurkboek dêr't jo de sifers staverje moatte.
- Druk op Alt +F11 om it Visual Basic-bewurkerfinster te iepenjen.
- As jo ferskate boeken iepene hawwe, kontrolearje dan dat it nedige wurkboek aktyf is meide list mei projekten yn de linker boppehoeke fan de bewurker (ien fan de wurkboek eleminten is markearre mei blau).
- Gean yn it bewurkermenu nei Ynfoegje -> Module .
- Jo moatte in finster sjen mei de namme YourBook - Module1. Selektearje alle koade yn it frame hjirûnder en plak it yn dit finster.
Opsje eksplisyt 'Haadfunksje Funksje SpellNumber( ByVal MyNumber) Dim Dollars, Cents, Temp Dim DecimalPlace, Count ReDim Place(9) As String Place(2) = "Thousand" Place(3) = " Million " Plak (4) = " Billion " Plak (5) = " Trillion " MyNumber = Trim (Str (MyNumber)) DecimalPlace = InStr (MyNumber, ".") As 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 (Rjochts (MyNumber, 3)) As Temp "" Dan Dollars = Temp & amp; Plak (Count) & amp; Dollars As Len (MyNumber) & GT; 3 Dan MyNumber = Left(MyNumber, Len(MyNumber) - 3) Else MyNumber = "" End If Count = Count + 1 Loop Selektearje Case Dollars Case "" Dollars = "Gjin Dollars" Case "Ien" Dollars = "Ien Dollar" Case Else Dollars = Dollars & amp; " Dollars" End Selektearje Selektearje Case Cents Case "" Cents = " en Gjin Cents" Case "Ien" Cents = " en ien Cent" Case Else Cents = " en " & amp; sinten & amp; "Sint" End Selektearje SpellNumber = Dollars & amp; Cents End Function Function GetHundreds(ByVal MyNumber) Dim Result As String As Val(MyNumber) = 0 Dan Exit Function MyNumber = Right( "000" & MyNumber, 3) ' Konvertearje de hûnderten plak. As Mid (MyNumber, 1, 1) "0" Dan Result = GetDigit (Mid (MyNumber, 1, 1)) & amp; " Hûndert " End If ' Konvertearje de tsienen en ienen plak. As Mid (MyNumber, 2, 1) "0" Dan 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 = "" 'Null out de tydlike funksje wearde. If Val(Left(TensText, 1)) = 1 Then ' If value between 10-19… " Gefal 13: Resultaat = "Trettjin" Case 14: Resultaat = "Fjirtjin" Case 15: Resultaat = "Fyftjin" Case 16: Resultaat = "Sechstjin" Case 17: Resultaat = "Santjin" Case 18: Resultaat = "Achtjin" Case 19: Resultaat = "Njoggentjin" Case Else End Selektearje oars ' As wearde tusken 20-99... Selektearje Case Val(Left(TensText, 1)) Case 2: Result = "Twenty" Case 3: Result = "Thirty" Case 4: Result = "Fjirtich " Case 5: Result = "Fyftich " Case 6: Result = "Sechstich " Case 7: Result = "Santich " Case 8: Result = "Tachtich " Case 9: Result = "Njoggentich " Case Else End Selektearje Resultaat = Resultaat & amp; GetDigit _ (Rjochts(TensText, 1)) ' Ophelje ien plak. Ein As GetTens = Resultaat Ein Funksje Funksje GetDigit(Sifer) Selektearje CaseVal(Digit) Case 1: GetDigit = "Ien" Case 2: GetDigit = "Twa" Case 3: GetDigit = "Trije" Case 4: GetDigit = "Fjouwer" Case 5: GetDigit = "Fiif" Case 6: GetDigit = " Six" Case 7: GetDigit = "Seven" Case 8: GetDigit = "Acht" Case 9: GetDigit = "Nine" Case Else : GetDigit = "" End Selektearje einfunksje
- Druk op Ctrl+S om it bywurke wurkboek op te slaan.
Jo moatte jo wurkboek opnij bewarje. As jo besykje it wurkboek te bewarjen mei in makro, krije jo it berjocht " De folgjende funksjes kinne net bewarre wurde yn makrofrij wurkboek "
Klik Nee. As jo sjogge in nij dialooch, keas de Bewarje as opsje. Kies yn it fjild " Bewarje as type " de opsje " Excel-makro-ynskeakele wurkboek ".
Brûk SpellNumber-makro yn jo wurkblêden
No kinne jo de funksje SpellNumber brûke yn jo Excel-dokuminten. Fier =SpellNumber(A2)
yn yn 'e sel wêr't jo it nûmer skreaun moatte krije yn wurden. Hjir is A2 it adres fan 'e sel mei it nûmer of bedrach.
Hjir kinne jo it resultaat sjen:
Voila!
Kopieer de SpellNumber-funksje fluch nei oare sellen.
As jo moatte jo de hiele tabel konvertearje, net allinich 1 sel, pleats jo mûsoanwizer yn 'e rjochter ûnderhoeke fan' e sel mei de formule oant it feroaret yn in lyts swart krús:
Klik mei lofts en sleep it oer de kolom om de formule yn te foljen. Los de knop los om de resultaten te sjen:
Opmerking. Asjebleafthâld der rekken mei dat as jo SpellNumber brûke mei in keppeling nei in oare sel, de skreaune som bywurke wurdt elke kear as it nûmer yn 'e boarnesel feroare wurdt.
Jo kinne it nûmer ek direkt yn 'e funksje ynfiere, foar foarbyld, =SpellNumber(29.95)
(29,95 - sûnder oanhalingstekens en it dollarteken).
Neidielen fan it brûken fan makro om sifers yn Excel te staverjen
Earst moatte jo VBA witte om de koade te feroarjen neffens jo ferlet. It is nedich om de koade foar elke wurkboek te plakjen, wêr't jo fan plan binne it te feroarjen. Oars moatte jo in sjabloanbestân meitsje mei makro's en Excel konfigurearje om dit bestân by elke start te laden.
It wichtichste neidiel fan it brûken fan in makro is as jo it wurkboek nei in oar stjoere, dizze persoan sil net sjoch de tekst útsein as de makro is ynboud yn it wurkboek. En sels as it ynboud is, krije se in warskôging dat d'r makro's yn it wurkboek binne.
Nûmers staverje yn wurden mei in spesjale tafoeging
Foar Excel-brûkers dy't sommen fluch staverje moatte, mar gjin tiid hawwe om VBA te learen of oplossingen út te finen, hawwe wy in spesjaal ark makke dat kin fluch útfiere de bedrach-to-wurden konverzje foar in pear populêre faluta. Moetsje asjebleaft de Spell Number-tafoeging opnommen mei de lêste release fan ús Ultimate Suite foar Excel.
Njonken dat it klear is foar gebrûk, is it ark echt fleksibel yn it konvertearjen fan bedragen nei tekst:
- Jo kinne ien fan 'e selektearjefolgjende faluta: USD, EUR, GBP, BIT, AUD.
- Stave it fraksjediel yn sinten, pennies, of bitcents.
- Kies elke tekstcase foar it resultaat: lytse letters, HOOFDLETTERS , Titel Case, of Sentence case.
- Stave it desimale diel op ferskate manieren.
- Nul sinten opnimme of weilitte.
De tafoeging stipet alle moderne ferzjes ynklusyf Excel 365, Excel 2029, Excel 2016, Excel 2013 en Excel 2010. Fiel jo frij om oare mooglikheden te ferkennen op 'e thússide fan it produkt dy't hjirboppe keppele is.
En no, litte wy dit nut foar nûmerstavering yn aksje sjen. :
- Selektearje in lege sel foar it resultaat.
- Op de Ablebits ljepper, yn de Utilities groep, klikje op Spell Number .
- Yn it dialoochfinster Spill Number dat ferskynt, konfigurearje de folgjende dingen:
- Foar it fak Selektearje jo nûmer , kies de sel mei it bedrach dat jo as tekst skreaun wolle krije.
- Jou de winske op it stuit , letterfalle en de manier wêrop de desimale diel fan it getal moat stavere wurde.
- Definiearje oft jo nul sinten opnimme wolle of net.
- Kies of jo it resultaat as wearde of formule ynfoegje wolle.
- Underoan it dialoochfinster, foarbyld it resultaat. As jo bliid binne mei de manier wêrop jo nûmer skreaun is, klik dan op Stave . Besykje oars oare ynstellings.
De skermôfbylding hjirûnder lit de standert sjenkarren en it stavere nûmer yn B2. Sjoch asjebleaft in formule (krekterder, in troch brûkers definieare funksje) yn 'e formulebalke:
En dit is in flugge demonstraasje fan hoe't oare faluta's kinne wurde stavere:
Tips en notysjes:
- Om't de add-in Spell Number is ûntworpen om gefallen fan gebrûk yn it echte libben lykas faktueren en oare finansjele dokuminten te behanneljen, kin it mar ien nûmer <6 konvertearje>op ien kear.
- Om in kolom fan sifers te staverjen, foegje in formule yn 'e earste sel, en kopiearje dan de formule nei ûnderen.
- As der kâns is dat jo boarnegegevens kinne yn 'e takomst feroarje, it is it bêste om it resultaat yn te foegjen as formule , sadat it automatysk bywurket as it orizjinele nûmer feroaret.
- As jo it resultaat as formule kieze opsje, in oanpaste troch brûkers definieare funksje (UDF) wurdt ynfoege. As jo fan plan binne jo wurkboek te dielen mei ien dy't de Ultimate Suite net ynstalleare hat, tink dan om formules te ferfangen troch wearden foardat jo dielen.
Omkearde konverzje - Ingelske wurden yn sifers
Earlik sein , Ik kin net yntinke wêrom jo miskien nedich hawwe. Just in case... :)
It liket derop dat Excel MVP, Jerry Latham, sa'n Excel User defined function (UDF) makke hat as WordsToDigits . It konvertearret Ingelske wurden werom nei nûmer.
Jo kinne Jerry's WordsToDigits-wurkboek downloade om de UDF-koade te sjen. Hjir fine jo ek syn foarbylden fan hoe't jo defunksje.
Jo kinne sjen hoe't de funksje wurket op it blêd " Sample Entries ", dêr't jo ek jo eigen foarbylden ynfiere kinne. As jo fan plan binne WordsToDigits yn jo dokuminten te brûken, wurde dan op 'e hichte brocht dat dizze funksje beheiningen hat. It herkent bygelyks gjin fraksjes dy't yn wurden binne ynfierd. Alle details fine jo op it blêd " Ynformaasje ".