Office
Vpis

Pretvarjanje števil v besede

Opomba:  Najnovejšo vsebino pomoči v vašem jeziku vam želimo zagotoviti v najkrajšem možnem času. Ta stran je bila prevedena z avtomatizacijo in lahko vsebuje slovnične napake ali nepravilnosti. Naš namen je, da bi bila vsebina za vas uporabna. Ali nam lahko na dnu te strani sporočite, ali so bile informacije za vas uporabne? Tukaj je angleški članek za preprosto referenco.

Excel 2013 in Excel 2016 nimajo privzeto funkcijo, ki prikazuje številke kot angleške besede v celici preglednice, vendar to funkcijo lahko dodate tako, da prilepite kodo funkcije SpellNumber v list modula. Ta funkcija vam omogoča, da pretvorite dolar in centov količine besede.

Če želite, da pretvorijo številske vrednosti v besedilni obliki, ne da bi jih kot besedilo, uporabite funkcijo TEXT namesto tega.

V tem članku

Ustvarjanje funkcije SpellNumber za pretvorbo številk v besede

  1. Z bližnjico na tipkovnici, Alt + F11, odprite urejevalnik za Visual Basic.

    Opomba: Urejevalnik za Visual Basic lahko dostop tudi tako, da prikažete zavihek »Razvijalec« na traku.

  2. Kliknite zavihek Vstavljanje in nato Modul.

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

    Opomba: Ta koda je znana kot funkcija makra in avtomatizira postopek pretvorbe številk v besedilo v celotni preglednici.

    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, prilepljen v v modulu »modul1« (koda) polje.
  5. Kliknite Datoteka in nato kliknite Zapri in se vrni v Microsoft Excel. Funkcija SpellNumber je zdaj pripravljena za uporabo.

    Opomba: Ta funkcija deluje le v trenutni Excelovi datoteki, ki je odprta. Če želite funkcijo uporabiti še v drugi Excelovi datoteki, ponovite korake ter kopirajte in prilepite kodo v tisto datoteko.

Na vrh strani

Uporaba funkcije SpellNumber v posameznih celicah

  1. Vnesite formulo = SpellNumber(vrednost) v celico, kjer želite prikazati zapisano številko; vrednost zamenjajte z želeno številko.

  2. Na tipkovnici pritisnite tipko Enter.

    Če vnesete na primer =SpellNumber(22.50), bo v celici zapisano Twenty-Two Dollars and Fifty Cents.

    Namig: Če želite številke pretvoriti v besedilo v ločeni celici, zamenjajte številsko vrednost v formuli SpellNumber s sklicem na celico. Vnesite na primer =SpellNumber(A1), če želite prikazati zapisano vrednost celice A1.

Na vrh strani

Shranjevanje delovnega zvezka s funkcijo SpellNumber

Excel ne more shraniti delovnega zvezka z makro funkcijami v standardni obliki zapisa delovnega zvezka brez makrov. Če kliknete Datoteka > Shrani, se odpre pogovorno okno Projekt VB. Kliknite Ne.

V pogovornem oknu VB projekta kliknite ne.

Datoteko lahko shranite kot Excelovo predlogo z omogočenimi makri, če želite ohraniti njeno trenutno obliko.

  1. Kliknite Datoteka > Shrani kot.

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

    Izberite Excelova predloga z omogočenimi makri.
  3. Kliknite Shrani.

Na vrh strani

Glejte tudi

Funkcija TEXT

Razširite poznavanje Officea
Oglejte si izobraževanje
Prvi dobite nove funkcije
Pridružite se programu Office Insider

Vam je bila informacija v pomoč?

Zahvaljujemo se vam za povratne informacije.

Zahvaljujemo se vam za povratne informacije. Videti je, da bi vam prišla prav pomoč enega od naših Officeovih agentov za podporo.

×