Nëse ju është dashur ndonjëherë të shfaqni një numër të shkruar si tekst, me siguri keni zbuluar se Excel nuk ofron një funksion të tillë. Kur Excel nuk arrin të ofrojë, shpesh është e mundur të korrigjohet mangësia duke përdorur VBA. Këtu është një funksion VBA, i quajtur SPELLDOLLARS , që mund ta përdorni në formulat e fletëve të punës.
Shembuj Excel
Këtu janë disa shembuj të SPELLDOLLARS.

Kodi VBA
Për të përdorur këtë kod, shtypni Alt+F11 për të aktivizuar Visual Basic Editor. Pastaj zgjidhni Insert → Module për të futur një modul të ri VBA. Kopjoni kodin dhe ngjisni atë në modulin e ri.
Funksioni SPELLDOLLARS(qelizë) si variant
' Rikthen një vlerë, të shkruar me fjalë
Dollarë të zbehtë si varg, cent si varg
Teksti i zbehtë për sa kohë, pos për sa kohë
Dim Temp si varg
Zbeh iQindra për sa kohë, i dhjetë për sa kohë, iOnes për aq kohë
Dim Ones As Variant, Adoleshentët Si Variant, Dhjetra Si Variant
Njësitë e zbehta (2 deri në 5) si varg
Dim bHit Si Boolean, NegFlag Si Boolean
A është një qelizë jo-numërore apo boshe?
Nëse nuk është numerike (qeliza) Ose qeliza = "" Atëherë
SPELLDOLLARS = CVERr(xlErrVlera)
Funksioni i daljes
Fundi Nëse
'A është negative?
Nëse qeliza < 0="" then="" negflag="E vërtetë" qelizë="Abs(qeliza)" fund="" if="" dollarë="Format(qelizë," "###0.00")="" textlen="Len(Dollarë)" -="" 3="" '="" is="" it="" too="" large?="" if="" textlen=""> 15 Pastaj
SPELLDOLLARS = CVERr(xlErrNum)
Funksioni i daljes
Fundi Nëse
Bëj pjesën cent
Cent = E drejta (Dollarë, 2) & "/100 Dollarë"
Nëse qeliza < 1="" then="" spelldollars="Cents" exit="" funksion="" end="" if="" dollars="Left(Dollarë," textlen)="" ones="Array( ""," "një", "" "dy", "" "tre", "" "katër", "" _="" "pesë", "" "gjashtë", "" “shtatë”,="" "tetë",="" "nëntë")="" teens="Array("Dhjetë"," "eleven",="" "dymbëdhjetë",="" "trembëdhjetë",= "" "katërmbëdhjetë",="" _="" "pesëmbëdhjetë",="" "gjashtëmbëdhjetë",="" "shtatëmbëdhjetë",="" "tetëmbëdhjetë",="" "nëntëmbëdhjetë")="" dhjetëra = "Array(""," "",="" "twenty",="" "trity",="" "dyzet",="" "fifty",="" _="""sixty",="" "seventy",="" "ighty",="" "nentety")="" units(2)=""Thousand"" units(3)=""Million"" units( 4)=""Miliard"" njësi(5)=""Trilion"" temp="""" for="" pos="15" to="" 3="" step="" -3="" if="" textlen="">= Pos - 2 Pastaj
bHit = E rreme
If TextLen >= Pos Atëherë
iHundreds = Asc(Mid$(Dollarë, TextLen - Pos + 1, 1)) - 48
Nëse iHundreds > 0 Pastaj
Temp = Temp & " " & Ones (iHundreds) & " Hundred"
bHit = E vërtetë
Fundi Nëse
Fundi Nëse
iTens = 0
iOnes = 0
Nëse TextLen >= Pos - 1 Atëherë
iTens = Asc(Mid$(Dollarë, TextLen - Pos + 2, 1)) - 48
Fundi Nëse
Nëse TextLen >= Pos - 2 Pastaj
iOnes = Asc(Mid$(Dollarë, TextLen - Pos + 3, 1)) - 48
Fundi Nëse
Nëse iTens = 1 Atëherë
Temp = Temp & " " & Adoleshentët (iOnes)
bHit = E vërtetë
Përndryshe
Nëse iTens >= 2 Atëherë
Temp = Temp & “ “ & Tens (iTens)
bHit = E vërtetë
Fundi Nëse
Nëse iOnes > 0 Atëherë
Nëse iTens >= 2 Atëherë
Temp = Temp & "-"
Përndryshe
Temp = Temp & ""
Fundi Nëse
Temp = Temp & Ones (iOnes)
bHit = E vërtetë
Fundi Nëse
Fundi Nëse
Nëse bHit Dhe Pos > 3 Pastaj
Temp = Temp & " " & Njësitë (Pos 3)
Fundi Nëse
Fundi Nëse
Pozicioni tjetër
SPELLDOLLARS = Trim(Temp) & “dhe “ & Cents
Nëse NegFlag Atëherë SPELLDOLLARS = "(" & SPELLDOLLARS & ")"
Funksioni i Fundit