AYUDA Bono Cupón Cero VBA URGE!!

xelac

Bovino adicto
#1
Hola Bakunos xfavor necesito extremandemente de su ayuda,, la verdad tiene años o si no es ke siglos ke deje de programar en algunos lenguajes... y ahora necesito lago urgente por ke el tiempo me come... BUeno voy al grano.

Me dejaron hacer una macro con VBA en excel de un Bono Cupón. la formula es la siguiente:

Precio = VN/(1+R) ^ n donde

VN= Valor Nominal
R= Tasa
n= El tiempo o periodo

Ya realice el formulario y ya corre la puse la formula en el botton2 asi:

Private Sub CommandButton2_Click()
TXB_4.Text = Val(TXB_1.Text) / ((1 + (Val(TXB_2.Text) / 100)) ^ Val(TXB_3.Text))
End Sub

Donde TXB_1 es el VN, TXB_2 es la tasa pero como se daria en porcentaje se divide entre 100 y puse se eleva a TXB_3 ke es el tiempo o periodo.



1. Hasta aki todo bien,, el problema es como hacer para condicionar los TXB_1.text, TXB_2.tex, TXB_3.tex, TXB_4.text para ke solo acepte números y no texto,, tambièn para ke solo acepte hasta dos decimales, y como resultado solo arroje 2 decimales.

2. En la R (tasa) o ke vendria siendo el TXB_2.text como hacer para ke el usuario indike si la tasa es bimestral, trimestral, cuatrimestral, semestral, anual y dependiendo de ello la convierta anual dependiendo el caso pues se dividira entre 12 ke son los meses del año.

P. D. diskulpen es ke como veran ya tiene tiempo ke no programo y no me acuerdo bien como hacer esto y se k es algo super facil pero de verdad sorry por mi ignorancia.

SALUDOS a todos...
 
#2
1.
Código:
Private Sub Text_Validate(Cancel As Boolean)
    If IsNumeric(Text.Text) Then
        Text.Text = Format(Text.Text, "#,##0.00")
    Else
        Text.Text = 0 ' ó algun texto indicando que debe escribir solo numeros
        Cancel = True
    End If
End Sub
2. Usa los OptionButton
:chommy:
 

xelac

Bovino adicto
#3
1.
Código:
Private Sub Text_Validate(Cancel As Boolean)
    If IsNumeric(Text.Text) Then
        Text.Text = Format(Text.Text, "#,##0.00")
    Else
        Text.Text = 0 ' ó algun texto indicando que debe escribir solo numeros
        Cancel = True
    End If
End Sub
2. Usa los OptionButton
:chommy:
Hola de nuevo no le entiendo donde debe ir el codigo:confused:,, hay kiero llorar :llorar:y como deberia ir para lo de los decimales me podrias ayudar xfavor... te paso mi codigo...


Private Sub CommandButton1_Click()
TXB_1.Text = ""
TXB_2.Text = ""
TXB_3.Text = ""
TXB_4.Text = ""
End Sub

Private Sub CommandButton2_Click()
TXB_4.Text = Val(TXB_1.Text) / ((1 + (Val(TXB_2.Text) / 100)) ^ Val(TXB_3.Text))
End Sub

Private Sub CommandButton3_Click()

End Sub

Private Sub Label1_Click()

End Sub

Private Sub Label2_Click()

End Sub

Private Sub Label3_Click()

End Sub

Private Sub Label4_Click()

End Sub

Private Sub TXB_1_Change()

End Sub

Private Sub TXB_2_Change()

End Sub

Private Sub TXB_3_Change()

End Sub

Private Sub TXB_4_Change()

End Sub

Private Sub UserForm_Click()

End Sub

Private Sub Text_Validate(Cancel As Boolean)
If IsNumeric(Text.Text) Then
Text.Text = Format(Text.Text, "#,##0.00")
Else
Text.Text = "Escribe solo numeros xfavor" ' ó algun texto indicando que debe escribir solo numeros
Cancel = True
End If
End Sub

Lo puse al final pero no funciona :S ke podria estas haciendo mal??
 
Arriba