• Lunes 29 de Abril de 2024, 02:14

Autor Tema:  Control Ocx  (Leído 1558 veces)

zamoazul

  • Nuevo Miembro
  • *
  • Mensajes: 11
    • Ver Perfil
Control Ocx
« en: Martes 12 de Abril de 2005, 17:18 »
0
hola amigos hace tiempo que ando buscando un control ocx que cambia un numero a su equivalente en letras si alguien lo tiene  por ahi me ayudaria mucho

gracias :D  :D  :D  :D

RadicalEd

  • Moderador
  • ******
  • Mensajes: 2430
  • Nacionalidad: co
    • Ver Perfil
Re: Control Ocx
« Respuesta #1 en: Martes 12 de Abril de 2005, 17:31 »
0
Sin controles OCX.
Código: Text
  1. Private Sub Command1_Click()
  2. If IsNumeric(TxtText1) = False Then
  3. MsgBox "Ingrese solo números.", vbInformation, "Atención!"
  4. TxtText1.SetFocus
  5. Else
  6. Label1.Caption = Numlet(CCur(TxtText1))
  7. End If
  8. Label1.Caption = Numlet(CCur(TxtText1))
  9. End Sub
  10.  
  11. *************************************************
  12.  
  13. Creamos un Módulo y le agregamos el siguiente códgo
  14.  
  15. Option Explicit
  16. Dim Unidades$(9), Decenas$(9), Oncenas$(9)
  17. Dim Veintes$(9), Centenas$(9)
  18.  
  19. Function Numlet$(NUM#)
  20. Dim DEC$, MILM$, MILL$, MILE$, UNID$
  21. ReDim SALI$(11)
  22. Dim var$, I%, AUX$
  23. 'NUM# = Round(NUM#, 2)
  24. var$ = Trim$(Str$(NUM#))
  25. If InStr(var$, ".") = 0 Then
  26. var$ = var$ + ".00"
  27. End If
  28.  
  29. If InStr(var$, ".") = Len(var$) - 1 Then
  30. var$ = var$ + "0"
  31. End If
  32. var$ = String$(15 - Len(LTrim$(var$)), "0") + LTrim$(var$)
  33. DEC$ = Mid$(var$, 14, 2)
  34. MILM$ = Mid$(var$, 1, 3)
  35. MILL$ = Mid$(var$, 4, 3)
  36. MILE$ = Mid$(var$, 7, 3)
  37. UNID$ = Mid$(var$, 10, 3)
  38. For I% = 1 To 11: SALI$(I%) = " ": Next I%
  39. I% = 0
  40. Unidades$(1) = "UNA "
  41. Unidades$(2) = "DOS "
  42. Unidades$(3) = "TRES "
  43. Unidades$(4) = "CUATRO "
  44. Unidades$(5) = "CINCO "
  45. Unidades$(6) = "SEIS "
  46. Unidades$(7) = "SIETE "
  47. Unidades$(8) = "OCHO "
  48. Unidades$(9) = "NUEVE "
  49.  
  50. Decenas$(1) = "DIEZ "
  51. Decenas$(2) = "VEINTE "
  52. Decenas$(3) = "TREINTA "
  53. Decenas$(4) = "CUARENTA "
  54. Decenas$(5) = "CINCUENTA "
  55. Decenas$(6) = "SESENTA "
  56. Decenas$(7) = "SETENTA "
  57. Decenas$(8) = "OCHENTA "
  58. Decenas$(9) = "NOVENTA "
  59.  
  60. Oncenas$(1) = "ONCE "
  61. Oncenas$(2) = "DOCE "
  62. Oncenas$(3) = "TRECE "
  63. Oncenas$(4) = "CATORCE "
  64. Oncenas$(5) = "QUINCE "
  65. Oncenas$(6) = "DIECISEIS "
  66. Oncenas$(7) = "DIECISIETE "
  67. Oncenas$(8) = "DIECIOCHO "
  68. Oncenas$(9) = "DIECINUEVE "
  69.  
  70. Veintes$(1) = "VEINTIUNA "
  71. Veintes$(2) = "VEINTIDOS "
  72. Veintes$(3) = "VEINTITRES "
  73. Veintes$(4) = "VEINTICUATRO "
  74. Veintes$(5) = "VEINTICINCO "
  75. Veintes$(6) = "VEINTISEIS "
  76. Veintes$(7) = "VEINTISIETE "
  77. Veintes$(8) = "VEINTIOCHO "
  78. Veintes$(9) = "VEINTINUEVE "
  79.  
  80. Centenas$(1) = " CIENTO "
  81. Centenas$(2) = " DOSCIENTOS "
  82. Centenas$(3) = " TRESCIENTOS "
  83. Centenas$(4) = "CUATROCIENTOS "
  84. Centenas$(5) = " QUINIENTOS "
  85. Centenas$(6) = " SEISCIENTOS "
  86. Centenas$(7) = " SETECIENTOS "
  87. Centenas$(8) = " OCHOCIENTOS "
  88. Centenas$(9) = " NOVECIENTOS "
  89.  
  90. If NUM# > 999999999999.99 Then Numlet$ = " ": Exit Function
  91. If Val(MILM$) >= 1 Then
  92. SALI$(2) = " MIL ": '** MILES DE MILLONES
  93. SALI$(4) = " MILLONES "
  94. If Val(MILM$) <> 1 Then
  95. Unidades$(1) = "UN "
  96. Veintes$(1) = "VEINTIUN "
  97. SALI$(1) = Descifrar$(Val(MILM$))
  98. End If
  99. End If
  100. If Val(MILL$) >= 1 Then
  101. If Val(MILL$) < 2 Then
  102. SALI$(3) = "UN ": '*** UN MILLON
  103. If Trim$(SALI$(4)) <> "MILLONES" Then
  104. SALI$(4) = " MILLON "
  105. End If
  106. Else
  107. SALI$(4) = " MILLONES ": '*** VARIOS MILLONES
  108. Unidades$(1) = "UN "
  109. Veintes$(1) = "VEINTIUN "
  110. SALI$(3) = Descifrar$(Val(MILL$))
  111. End If
  112. End If
  113.  
  114. For I% = 2 To 9
  115. Centenas$(I%) = Mid$(Centenas(I%), 1, 11) + " "
  116. Next I%
  117. If Val(MILE$) > 0 Then
  118. SALI$(6) = " MIL ": '*** MILES
  119. If Val(MILE$) <> 1 Then
  120. SALI$(5) = Descifrar$(Val(MILE$))
  121. End If
  122. End If
  123. Unidades$(1) = "UNA "
  124. Veintes$(1) = "VEINTIUNA"
  125. If Val(UNID$) >= 1 Then
  126. SALI$(7) = Descifrar$(Val(UNID$)): '*** CIENTOS
  127. If Val(DEC$) >= 10 Then
  128. SALI$(8) = " CON ": '*** DECIMALES
  129. SALI$(10) = Descifrar$(Val(DEC$))
  130. End If
  131. End If
  132. If Val(MILM$) = 0 And Val(MILL$) = 0 And Val(MILE$) = 0 And Val(UNID$) = 0 Then SALI$(7) = " CERO "
  133. AUX$ = ""
  134. For I% = 1 To 11
  135. AUX$ = AUX$ + SALI$(I%)
  136. Next I%
  137. Numlet$ = Trim$(AUX$)
  138. End Function
  139.  
  140. Function Descifrar$(numero%)
  141. Static SAL$(4)
  142. Dim I%, CT As Double, DC As Double, DU As Double, UD As Double
  143. Dim VARIABLE$
  144.  
  145. For I% = 1 To 4: SAL$(I%) = " ": Next I%
  146. VARIABLE$ = String$(3 - Len(Trim$(Str$(numero%))), "0") + Trim$(Str$(numero%))
  147. CT = Val(Mid$(VARIABLE$, 1, 1)): '*** CENTENA
  148. DC = Val(Mid$(VARIABLE$, 2, 1)): '*** DECENA
  149. DU = Val(Mid$(VARIABLE$, 2, 2)): '*** DECENA + UNIDAD
  150. UD = Val(Mid$(VARIABLE$, 3, 1)): '*** UNIDAD
  151. If numero% = 100 Then
  152. SAL$(1) = "CIEN "
  153. Else
  154. If CT <> 0 Then SAL$(1) = Centenas$(CT)
  155. If DC <> 0 Then
  156. If DU <> 10 And DU <> 20 Then
  157. If DC = 1 Then SAL$(2) = Oncenas$(UD): Descifrar$ = Trim$(SAL$(1) + " " + SAL$(2)): Exit Function
  158. If DC = 2 Then SAL$(2) = Veintes$(UD): Descifrar$ = Trim$(SAL$(1) + " " + SAL$(2)): Exit Function
  159. End If
  160. SAL$(2) = " " + Decenas$(DC)
  161. If UD <> 0 Then SAL$(3) = "Y "
  162. End If
  163. If UD <> 0 Then SAL$(4) = Unidades$(UD)
  164. End If
  165. Descifrar = Trim$(SAL$(1) + SAL$(2) + SAL$(3) + SAL$(4))
  166. End Function
  167.  
PD. Este codigo no es mio lo copie de la web

Ojala te sirva.
Chao
El pasado son solo recuerdos, el futuro son solo sueños

zamoazul

  • Nuevo Miembro
  • *
  • Mensajes: 11
    • Ver Perfil
Re: Control Ocx
« Respuesta #2 en: Miércoles 13 de Abril de 2005, 04:19 »
0
vale compadre lo probe y me funciono al toque

te pasaste chao :D  :D  :hola: