Professional Documents
Culture Documents
تحويل الارقام الى احرف فى الاكسل
تحويل الارقام الى احرف فى الاكسل
Option Explicit 'Main Function Function SpellNumber(ByVal MyNumber) Dim Dollars, Cents, emp Dim Decimal!lace, Count "eDim !lace(#) $s Strin% !lace(&) ' ( )ousan* ( !lace(+) ' ( Million ( !lace(,) ' ( Billion ( !lace(-) ' ( rillion ( ' Strin% representation o. amount/ MyNumber ' rim(Str(MyNumber)) ' !osition o. *ecimal place 0 i. none/ Decimal!lace ' 1nStr(MyNumber, (/() ' Con2ert cents an* set MyNumber to *ollar amount/ 1. Decimal!lace 3 0 )en Cents ' 4et ens(5e.t(Mi*(MyNumber, Decimal!lace 6 7) 8 9 (00(, &)) MyNumber ' rim(5e.t(MyNumber, Decimal!lace : 7)) En* 1. Count ' 7 Do ;)ile MyNumber <3 (( emp ' 4et=un*re*s("i%)t(MyNumber, +)) 1. emp <3 (( )en Dollars ' emp 8 !lace(Count) 8 Dollars 1. 5en(MyNumber) 3 + )en MyNumber ' 5e.t(MyNumber, 5en(MyNumber) : +) Else MyNumber ' (( En* 1. Count ' Count 6 7 5oop Select Case Dollars Case (( Dollars ' (No Dollars( Case (One( Dollars ' (One Dollar( Case Else Dollars ' Dollars 8 ( Dollars( En* Select Select Case Cents Case (( Cents ' ( an* No Cents( Case (One( Cents ' ( an* One Cent( Case Else Cents ' ( an* ( 8 Cents 8 ( Cents( En* Select SpellNumber ' Dollars 8 Cents En* Function ' Con2erts a number .rom 700:### into text Function 4et=un*re*s(ByVal MyNumber) Dim "esult $s Strin% 1. Val(MyNumber) ' 0 )en Exit Function MyNumber ' "i%)t((000( 8 MyNumber, +) ' Con2ert t)e )un*re*s place/ 1. Mi*(MyNumber, 7, 7) <3 (0( )en "esult ' 4etDi%it(Mi*(MyNumber, 7, 7)) 8 ( =un*re* (
En* 1. ' Con2ert t)e tens an* ones place/ 1. Mi*(MyNumber, &, 7) <3 (0( )en "esult ' "esult 8 4et ens(Mi*(MyNumber, &)) Else "esult ' "esult 8 4etDi%it(Mi*(MyNumber, +)) En* 1. 4et=un*re*s ' "esult En* Function ' Con2erts a number .rom 70 to ## into text/ Function 4et ens( ens ext) Dim "esult $s Strin% "esult ' (( ' Null out t)e temporary .unction 2alue/ 1. Val(5e.t( ens ext, 7)) ' 7 )en ' 1. 2alue bet>een 70: 7#/// Select Case Val( ens ext) Case 70? "esult ' ( en( Case 77? "esult ' (Ele2en( Case 7&? "esult ' ( >el2e( Case 7+? "esult ' ( )irteen( Case 7,? "esult ' (Fourteen( Case 7-? "esult ' (Fi.teen( Case 7@? "esult ' (Sixteen( Case 7A? "esult ' (Se2enteen( Case 7B? "esult ' (Ei%)teen( Case 7#? "esult ' (Nineteen( Case Else En* Select Else ' 1. 2alue bet>een &0: ##/// Select Case Val(5e.t( ens ext, 7)) Case &? "esult ' ( >enty ( Case +? "esult ' ( )irty ( Case ,? "esult ' (Forty ( Case -? "esult ' (Fi.ty ( Case @? "esult ' (Sixty ( Case A? "esult ' (Se2enty ( Case B? "esult ' (Ei%)ty ( Case #? "esult ' (Ninety ( Case Else En* Select "esult ' "esult 8 4etDi%it 9 ("i%)t( ens ext, 7)) ' "etrie2e ones place/ En* 1. 4et ens ' "esult En* Function ' Con2erts a number .rom 7 to # into text/ Function 4etDi%it(Di%it) Select Case Val(Di%it) Case 7? 4etDi%it ' (One( Case &? 4etDi%it ' ( >o( Case +? 4etDi%it ' ( )ree( Case ,? 4etDi%it ' (Four( Case -? 4etDi%it ' (Fi2e( Case @? 4etDi%it ' (Six( Case A? 4etDi%it ' (Se2en( Case B? 4etDi%it ' (Ei%)t( Case #? 4etDi%it ' (Nine( Case Else? 4etDi%it ' ((