Вы находитесь на странице: 1из 3

Convert Number Into Words In MS Excel

How To Convert Number Into Words In MS Excel ? (Example 100 Hundred !ollars"

MS Excel has so many Text, Financial and Statistical Formulas. But Unfortunately, we
don't have the direct formula to convert Num er to the Text !ords. Fortunately, we have a Macro "ode to act for the same. # found a Macro "ode to convert Num er to the En$lish Text !ords, and # did few modifications to customi%e.

Steps Need to Follow :&. '(en MS Excel !or) oo) *. "lic) +lt , F&& Then, Microsoft -isual Basic !indow o(ens .. "lic) +lt , #, M /or "lic) Module from #nsert Menu Bar0 Then, Module !indow o(ens 1. "o(y the elow "ode /Short Cut: "trl , " /or0 +lt , E, " /or0 2i$ht "lic), " /or0 "trl , #nsert0 #pt$on Expl$c$t %Ma$n &unct$on &unct$on NumWords('()al M(Number" !$m *upees+ ,a$ses+ Temp !$m !ec$mal,lace+ Count *e!$m ,lace(-" .s Str$n/ ,lace(0" 1 T2ousand 1 ,lace(3" 1 M$ll$on 1 ,lace(4" 1 '$ll$on 1 ,lace(5" 1 Tr$ll$on 1 % Str$n/ representat$on o6 amount7 M(Number Tr$m(Str(M(Number"" % ,os$t$on o6 dec$mal place 0 $6 none7 !ec$mal,lace InStr(M(Number+ 171" % Convert ,a$ses and set M(Number to *upee amount7 I6 !ec$mal,lace 8 0 T2en ,a$ses 9etTens(:e6t(M$d(M(Number+ !ec$mal,lace ; 1" < = 1001+ 0"" M(Number Tr$m(:e6t(M(Number+ !ec$mal,lace > 1"" End I6 Count 1 !o W2$le M(Number ?8 11 Temp 9etHundreds(*$/2t(M(Number+ 3"" I6 Temp ?8 11 T2en *upees Temp < ,lace(Count" < *upees I6 :en(M(Number" 8 3 T2en M(Number :e6t(M(Number+ :en(M(Number" > 3" Else M(Number 11 End I6 Count Count ; 1 :oop Select Case *upees Case 11 *upees 1No *upees1 Case 1#ne1 *upees 1#ne *upee1 Case Else

*upees *upees < 1 *upees1 End Select Select Case ,a$ses Case 11 ,a$ses 1 and No ,a$ses1 Case 1#ne1 ,a$ses 1 and #ne ,a$se1 Case Else ,a$ses 1 and 1 < ,a$ses < 1 ,a$ses1 End Select NumWords *upees < ,a$ses End &unct$on % Converts a number 6rom 100>--- $nto text &unct$on 9etHundreds('()al M(Number" !$m *esult .s Str$n/ I6 )al(M(Number" 0 T2en Ex$t &unct$on M(Number *$/2t(10001 < M(Number+ 3" % Convert t2e 2undreds place7 I6 M$d(M(Number+ 1+ 1" ?8 101 T2en *esult 9et!$/$t(M$d(M(Number+ 1+ 1"" < 1 Hundred 1 End I6 % Convert t2e tens and ones place7 I6 M$d(M(Number+ 0+ 1" ?8 101 T2en *esult *esult < 9etTens(M$d(M(Number+ 0"" Else *esult *esult < 9et!$/$t(M$d(M(Number+ 3"" End I6 9etHundreds *esult End &unct$on % Converts a number 6rom 10 to -- $nto text7 &unct$on 9etTens(TensText" !$m *esult .s Str$n/ *esult 11 % Null out t2e temporar( 6unct$on value7 I6 )al(:e6t(TensText+ 1"" 1 T2en % I6 value between 10>1-777 Select Case )al(TensText" Case 10@ *esult 1Ten1 Case 11@ *esult 1Eleven1 Case 10@ *esult 1Twelve1 Case 13@ *esult 1T2$rteen1 Case 14@ *esult 1&ourteen1 Case 15@ *esult 1&$6teen1 Case 1A@ *esult 1S$xteen1 Case 1B@ *esult 1Seventeen1 Case 1C@ *esult 1E$/2teen1 Case 1-@ *esult 1N$neteen1 Case Else End Select Else % I6 value between 00>--777 Select Case )al(:e6t(TensText+ 1"" Case 0@ *esult 1Twent( 1 Case 3@ *esult 1T2$rt( 1 Case 4@ *esult 1&ort( 1 Case 5@ *esult 1&$6t( 1 Case A@ *esult 1S$xt( 1 Case B@ *esult 1Sevent( 1 Case C@ *esult 1E$/2t( 1 Case -@ *esult 1N$net( 1 Case Else End Select *esult *esult < 9et!$/$t = (*$/2t(TensText+ 1"" % *etr$eve ones place7 End I6 9etTens *esult End &unct$on % Converts a number 6rom 1 to - $nto text7

&unct$on 9et!$/$t(!$/$t" Select Case )al(!$/$t" Case 1@ 9et!$/$t 1#ne1 Case 0@ 9et!$/$t 1Two1 Case 3@ 9et!$/$t 1T2ree1 Case 4@ 9et!$/$t 1&our1 Case 5@ 9et!$/$t 1&$ve1 Case A@ 9et!$/$t 1S$x1 Case B@ 9et!$/$t 1Seven1 Case C@ 9et!$/$t 1E$/2t1 Case -@ 9et!$/$t 1N$ne1 Case Else@ 9et!$/$t 11 End Select End &unct$on 3. 4aste into the Module !indow /Short Cut: "trl , - /or0 +lt , E, - /or0 2i$ht "lic), -0 5. "lose Microsoft -isual Basic !indow 6. That's +ll 777

How can I Test ?


Throu$h the a ove Macro "ode we created a new formula 8Num!ords8. Now, we can use 8Num!ords8 Formula to "onvert Num er to the Text !ords. Example: 1. Enter Number nto the Formula 9numwords/&::0 The a ove formula results 8'ne ;undred 2u(ees and No 4aise8 !. "s n# Cell $e%erence nto the Formula <et Say, +& cell contains &3:: and we want to text words in +* Then the Formula in +* cell is 9numwords/+&0 +* cell results 8'ne Thousand Five ;undred 2u(ees and No 4aise8 Now, =ou can test with more exam(les.

Вам также может понравиться