Vpišite se z Microsoftovim
Vpišite se ali ustvarite račun.
Pozdravljeni,
Izberite drug račun.
Imate več računov
Izberite račun, s katerim se želite vpisati.

Excel nima privzete funkcije, ki prikaže številke kot angleške besede na delovnem listu, vendar lahko to možnost dodate tako, da prilepite to kodo funkcije SpellNumber v modul VBA (VBA). S to funkcijo lahko zneske v dolarjih in centih pretvorite v besede s formulo, tako da jih je 22,50 prebralo kot Twenty-Two Dollars and Fifty Cents. To je lahko zelo uporabno, če uporabljate Excel kot predlogo za tiskanje preverjanj.

Če želite številske vrednosti pretvoriti v obliko besedila, ne da bi jih prikazali kot besede, uporabite funkcijo TEXT .

Opomba: Microsoft ponuja primere programiranja le za ilustracije, brez jamstva, ki ni izraženo ali naznačeno. To vključuje, vendar ni omejeno na naznačena jamstva glede primernosti za prodajo ali primernosti za določen namen. V tem članku je predvideno, da poznate programski jezik VBA in orodja, ki se uporabljajo za ustvarjanje in iskanje napak v postopkih. Inženirji Microsoftove podpore vam lahko pomagajo razložiti delovanje določenega postopka. Vendar pa ti primeri ne bodo spremenili tako, da bi zagotovili dodano funkcionalnost, ali gradnji postopkov za izpolnjevanje vaših posebnih zahtev.

Ustvarjanje funkcije SpellNumber za pretvorbo številk v besede

  1. Urejevalnik za Visual Basic (VBE) odprete z bližnjico na tipkovnici Alt + F11 .

    Opomba: Urejevalnik za Visual Basic lahko odprete tudi tako, da na traku odprete zavihek »Razvijalec«.

  2. Kliknite zavihek Vstavljanje in nato Modul.

    V meniju Vstavljanje kliknite Modul.
  3. Kopirajte te vrstice kode.

    Opomba: Ta koda , znana kot uporabniško določena funkcija (UDF), avtomatizira opravilo pretvarjanja števil v besedilo na celotnem delovnem listu.

    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 "
    
    ' String representation of amount.
    
    MyNumber = Trim(Str(MyNumber))
    
    ' Position of decimal place 0 if none.
    
    DecimalPlace = InStr(MyNumber, ".")
    
    ' Convert cents and set MyNumber to dollar amount.
    
    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 = "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
    
    SpellNumber = Dollars & Cents
    
    End Function
    
    
    ' Converts a number from 100-999 into text
    
    Function GetHundreds(ByVal MyNumber)
    
    Dim Result As String
    
    If Val(MyNumber) = 0 Then Exit Function
    
    MyNumber = Right("000" & MyNumber, 3)
    
    ' Convert the hundreds place.
    
    If Mid(MyNumber, 1, 1) <> "0" Then
    
    Result = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred "
    
    End If
    
    ' Convert the tens and ones place.
    
    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
    
    
    ' Converts a number from 10 to 99 into text.
    
    
    Function GetTens(TensText)
    
    Dim Result As String
    
    Result = "" ' Null out the temporary function value.
    
    If Val(Left(TensText, 1)) = 1 Then ' If value between 10-19...
    
    Select Case Val(TensText)
    
    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 ' If value between 20-99...
    
    Select Case Val(Left(TensText, 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(TensText, 1)) ' Retrieve ones place.
    
    End If
    
    GetTens = Result
    
    End Function
    
    
    ' Converts a number from 1 to 9 into text.
    
    Function GetDigit(Digit)
    
    Select Case Val(Digit)
    
    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
  4. Vrstice kode prilepite v polje Modul1 (koda).

    Koda, prilepljene v polje Modul1 (koda).
  5. Pritisnite Alt + Q, da se vrnete v Excel. Funkcija SpellNumber je zdaj pripravljena za uporabo.

    Opomba: Ta funkcija deluje le za trenutni delovni zvezek. Če želite uporabiti to funkcijo v drugem delovnem zvezku, ponovite korake, da kopirate in prilepite kodo v ta delovni zvezek.

Na vrh strani

Uporaba funkcije SpellNumber v posameznih celicah

  1. Vnesite formulo =SpellNumber(A1) v celico, kjer želite prikazati zapisano število, kjer je A1 celica s številom, ki ga želite pretvoriti. Vrednost lahko vnesete tudi ročno, na primer =SpellNumber(22.50).

  2. Pritisnite tipko Enter , da potrdite formulo.

Na vrh strani

Shranjevanje delovnega zvezka s funkcijo SpellNumber

Excel ne more shraniti delovnega zvezka s funkcijami makrov v standardni obliki zapisa delovnega zvezka brez makrov (.xlsx). Če kliknete Shrani >shrani. Odpre se pogovorno okno Projekt VB . Kliknite Ne.

V pogovornem oknu Projekt VB kliknite Ne.

Datoteko lahko shranite kot Excelov delovni Macro-Enabled (.xlsm), da ohranite trenutno obliko zapisa datoteke.

  1. Kliknite Datoteka > Shrani kot.

  2. Kliknite spustni meni Shrani kot vrsto in izberite Excel Macro-Enabled delovni zvezek.

  3. Kliknite Shrani.

Na vrh strani

Glejte tudi

Funkcija TEXT

Ali potrebujete dodatno pomoč?

Ali želite več možnosti?

Raziščite ugodnosti naročnine, prebrskajte izobraževalne tečaje, preberite, kako zaščitite svojo napravo in še več.

Skupnosti vam pomagajo postaviti vprašanja in odgovoriti nanje, posredovati povratne informacije in prisluhniti strokovnjakom z bogatim znanjem.

Vam je bila informacija v pomoč?

Kako ste zadovoljni s kakovostjo jezika?
Kaj je vplivalo na vašo izkušnjo?
Če pritisnete »Pošlji«, bomo vaše povratne informacije uporabili za izboljšanje Microsoftovih izdelkov in storitev. Vaš skrbnik za IT bo lahko zbiral te podatke. Izjavi o zasebnosti.

Zahvaljujemo se vam za povratne informacije.

×