No se ejecuta instrucción al seleccionar una opción en formulario (Select Case)
Tengo en un formulario insertado un grupo de opciones (Marco5) una opción llamada Orden2006 y otra opción llamada Orden2020.
En el mismo formulario tengo insertado tres textbox llamados Prueba, PCorregida y Texto16 (donde realizo un cálculo). Lo que pretendo es que al seleccionar una opción u otra me haga lo que tengo en la siguiente instrucción, la cual la tengo insertada en Al hacer clic:
Private Sub Marco5_Click()
Select Case Me.Marco5
Case 1 'Orden 2006
Prueba.SetFocus
If Prueba.value >= 0.15 And Prueba.value <= 0.4 Then
PCorregida.SetFocus
PCorregida.value = Left(Prueba.value - 0.03, 4)
ElseIf Prueba.value >= 0.41 And Prueba <= 1 Then
PCorregida.SetFocus
PCorregida.value = Left(Prueba * 0.925, 4)
ElseIf Prueba.value >= 1.01 And Prueba <= 2 Then
PCorregida.SetFocus
Texto16.value = (Prueba * 20 / 100)
PCorregida.value = (Prueba - Texto16)
ElseIf Prueba.value >= 2 And Prueba <= 2.455 Then
PCorregida.SetFocus
Texto16.value = (Prueba * 20 / 100)
PCorregida.value = (Prueba - Texto16)
ElseIf Prueba.value >= 2.455 Then
Texto16.value = (Prueba * 0.75) - 1.35
PCorregida.value = (Prueba - Texto16)
End If
Case 2 'Orden 2020
Prueba.SetFocus
If Prueba.value >= 0.15 And Prueba <= 0.4 Then
PCorregida.value = Left(Prueba - 0.03, 4)
ElseIf Prueba.value >= 0.41 And Prueba <= 1 Then
PCorregida.SetFocus
PCorregida.value = Left(Prueba * 0.925, 4)
ElseIf Prueba.value >= 1.01 And Prueba <= 2 Then
PCorregida.value = Left(0.75 * 0.925, 4)
ElseIf Prueba.value > 2 And Prueba > 2.455 Then
PCorregida.SetFocus
Texto16.value = (Prueba * 0.75) - 1.35
PCorregida.value = (Prueba - Texto16)
End If
End Select
End Sub
Por ejemplo si selecciono Case1:
He inserto en Prueba=0,15 en PCorregida debería salir 0,12, y no sale el resultado, sale 0,00. Me podéis decir donde pudiera estar cometiendo el error o si por el contrario debería hacer otro planteamiento.