Prijavite se pomoću Microsoft naloga
Prijavite se ili kreirajte nalog.
Zdravo,
Izaberite drugi nalog.
Imate više naloga
Odaberite nalog pomoću kojeg želite da se prijavite.

Excel nema podrazumevanu funkciju koja prikazuje brojeve kao reči na engleskom jeziku u radnom listu, ali tu mogućnost možete dodati tako što ćete nalepiti sledeći spellNumber kôd funkcije u VBA (Visual Basic for Applications) modul. Ova funkcija vam omogućava da konvertujete iznos dolara i centa u reči pomoću formule, tako da će 22,50 biti pročitano kao Twenty-Two dolara i pedeset centi. To može biti veoma korisno ako koristite Excel kao predložak za štampanje provera.

Ako želite da konvertujete numeričke vrednosti u format teksta bez prikazivanja kao reči, umesto toga koristite funkciju TEXT .

Napomena: Microsoft pruža primere za programiranje samo za ilustraciju, bez izražene ili podrazumevane garancije. To uključuje, ali nije ograničeno na, podrazumevane garancije za podstiču na raspoređenu robu ili podnožje za određenu svrhu. Ovaj članak pretpostavlja da ste upoznati sa VBA programiranim jezikom i sa alatkama koje se koriste za kreiranje i otklanjanje grešaka u procedurama. Inženjeri Microsoft podrške mogu da objasne funkcionalnost određene procedure. Međutim, oni neće izmeniti ove primere da bi obezbedili dodatnu funkcionalnost ili da bi konstruisali procedure koje ispunjavaju vaše određene zahteve.

Kreiranje funkcije SpellNumber za konvertovanje brojeva u reči

  1. Koristite tastersku prečicu Alt + F11 da biste otvorili Visual Basic Editor (VBE).

    Napomena: Visual Basic Editor možete da pristupite i tako što ćete na traci prikazati karticu Projektovanje.

  2. Izaberite karticu Umetanje i kliknite na dugme Modul.

    U meniju Umetanje izaberite stavku Modul.
  3. Kopirajte sledeće redove koda.

    Napomena: Poznat kao korisnički definisana funkcija (UDF), ovaj kôd automatizuje zadatak konvertovanja brojeva u tekst u celom radnom 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. Nalepite redove koda u polje Modul1 (kôd ).

    Kôd nalepljen u polje Modul1 (kôd).
  5. Pritisnite kombinaciju tastera Alt + Q da biste se vratili u Excel. Funkcija SpellNumber je sada spremna za korišćenje.

    Napomena: Ova funkcija funkcioniše samo za trenutnu radnu svesku. Da biste koristili ovu funkciju u drugoj radnoj svesci, morate ponoviti korake da biste kopirali i nalepili kôd u tu radnu svesku.

Vrh stranice

Korišćenje funkcije SpellNumber u pojedinačnim ćelijama

  1. Otkucajte formulu =SpellNumber(A1) u ćeliju u kojoj želite da prikažete pisani broj, gde je A1 ćelija koja sadrži broj koji želite da konvertujete. Možete i ručno da otkucate vrednost kao što je =SpellNumber(22,50).

  2. Pritisnite taster Enter da biste potvrdili formulu.

Vrh stranice

Čuvanje radne sveske funkcije SpellNumber

Excel ne može da sačuva radnu svesku sa makro funkcijama u standardnom formatu radne sveske bez makroa (.xlsx). Ako izaberete stavku Datoteka >sačuvaj. Otvara se dijalog VB projekta. Kliknite na dugme Ne.

U dijalogu VB projekta kliknite na dugme Ne.

Datoteku možete da sačuvate kao Excel Macro-Enabled radnu svesku (.xlsm) da biste zadržali datoteku u trenutnom formatu.

  1. Izaberite stavku Datoteka > Sačuvaj kao.

  2. Kliknite na padajući meni Sačuvaj kao tip i izaberite stavku Excel Macro-Enabled radnoj svesci.

  3. Kliknite na dugme Sačuvaj.

Vrh stranice

Takođe pogledajte

Funkcija TEXT

Da li vam je potrebna dodatna pomoć?

Želite još opcija?

Istražite pogodnosti pretplate, pregledajte kurseve za obuku, saznajte kako da obezbedite uređaj i još mnogo toga.

Zajednice vam pomažu da postavljate pitanja i odgovarate na pitanja, dajete povratne informacije i čujete mišljenje od stručnjaka sa bogatim znanjem.

Da li su vam ove informacije koristile?

Koliko ste zadovoljni kvalitetom jezika?
Šta je uticalo na vaše iskustvo?
Kada kliknete na dugme Prosledi“, vaše povratne informacije će se koristiti za poboljšanje Microsoft proizvoda i usluga. Vaš IT administrator će moći da prikupi ove podatke. Izjava o privatnosti.

Hvala vam na povratnim informacijama!

×