plis es urgente!!!
Hola... no se que hacer...tengo un programa que esta en lasado tres formularios..donde son 15 preguntas con cuatro opciones estan distribuidas en los tres formulairos..y en el ultimo formulario..esta el boton finalizarr....que al terminar de contestas las 15 preguntas debe de dar un resultado...pero no funciona es te es mi codigo..por favor ayudenme tengo que entregarlo como proyecto para la escuela es par amañana en la tarde...ayuda plis este es mi codigo del boton finalizar....
Private Sub boton_final_Click()
Dim res1 As Double
Dim res2 As Double
Dim res3 As Double
Dim resultado As Double
'op..son los que tiene valores es el nombre de option botton'
'las opciones que se establecen son los que tienen valores..loq que no se es como hace rque de el resultado'
'si se suman las 15 daria 100
If op2.Value Then
res1 = 6.666666667
End If
If op8.Value Then
res1 = 6.666666667
End If
If op9.Value Then
res1 = 6.666666667
End If
If op13.Value Then
res1 = 6.666666667
End If
If op20.Value Then
res1 = 6.666666667
End If
If op23.Value Then
res1 = 6.666666667
End If
If op26.Value Then
res2 = 6.666666667
End If
If op31.Value Then
res2 = 6.666666667
End If
If op34.Value Then
res2 = 6.666666667
End If
If opp40.Value Then
res2 = 6.666666667
End If
If op41.Value Then
res2 = 6.666666667
End If
If op48.Value Then
res2 = 6.666666667
End If
If op50.Value Then
res3 = 6.666666667
End If
If opp55.Value Then
res3 = 6.666666667
End If
If op60.Value Then
res3 = 6.666666667
End If
resultado = res1 + res2 + res3
Text1.Text = resultado
End Sub
NOTA: ME APARECE ERROR 424 EN TIEMPOD E EJCUCION.
SE REQUIERE UN OBJETO.......que ago..plis ayuda..S.O.S
Private Sub boton_final_Click()
Dim res1 As Double
Dim res2 As Double
Dim res3 As Double
Dim resultado As Double
'op..son los que tiene valores es el nombre de option botton'
'las opciones que se establecen son los que tienen valores..loq que no se es como hace rque de el resultado'
'si se suman las 15 daria 100
If op2.Value Then
res1 = 6.666666667
End If
If op8.Value Then
res1 = 6.666666667
End If
If op9.Value Then
res1 = 6.666666667
End If
If op13.Value Then
res1 = 6.666666667
End If
If op20.Value Then
res1 = 6.666666667
End If
If op23.Value Then
res1 = 6.666666667
End If
If op26.Value Then
res2 = 6.666666667
End If
If op31.Value Then
res2 = 6.666666667
End If
If op34.Value Then
res2 = 6.666666667
End If
If opp40.Value Then
res2 = 6.666666667
End If
If op41.Value Then
res2 = 6.666666667
End If
If op48.Value Then
res2 = 6.666666667
End If
If op50.Value Then
res3 = 6.666666667
End If
If opp55.Value Then
res3 = 6.666666667
End If
If op60.Value Then
res3 = 6.666666667
End If
resultado = res1 + res2 + res3
Text1.Text = resultado
End Sub
NOTA: ME APARECE ERROR 424 EN TIEMPOD E EJCUCION.
SE REQUIERE UN OBJETO.......que ago..plis ayuda..S.O.S
Veamos:
lo único que se me ocurre que pueda darte ese error es que no tengas definido alguno de los optionbutton, asegúrate bien de que los nombres coinciden (he visto que has escrito algunos con doble P, por ejemplo)
Aparte de eso, si no he entendido mal tu planteamiento, te falta inicializar las variables res1,res2 y res3 a cero (no es imprescindible, pero sí aconsejable) y luego, en los IF, el código sería:
if op55.value then
res3=res3+6.6666667
endif
es que si no lo haces así, res1, res2 o res3 jamás podrían ser mayores a 6.6666667
de todos modos, un consejo:
lo de usar incrementos de 6.6666667 me parece algo muy alocado. y si incrementas de uno en uno y tienes en cuenta que el valor máximo es 15, entonces si finalizas con:
resultado=(res1+res2+res3) X 100 / 15
a mi entender queda más "limpio" y el resultado es idéntico (aparte que si aumentas el número de respuestas, corregirlo sería muy sencillo)
lo único que se me ocurre que pueda darte ese error es que no tengas definido alguno de los optionbutton, asegúrate bien de que los nombres coinciden (he visto que has escrito algunos con doble P, por ejemplo)
Aparte de eso, si no he entendido mal tu planteamiento, te falta inicializar las variables res1,res2 y res3 a cero (no es imprescindible, pero sí aconsejable) y luego, en los IF, el código sería:
if op55.value then
res3=res3+6.6666667
endif
es que si no lo haces así, res1, res2 o res3 jamás podrían ser mayores a 6.6666667
de todos modos, un consejo:
lo de usar incrementos de 6.6666667 me parece algo muy alocado. y si incrementas de uno en uno y tienes en cuenta que el valor máximo es 15, entonces si finalizas con:
resultado=(res1+res2+res3) X 100 / 15
a mi entender queda más "limpio" y el resultado es idéntico (aparte que si aumentas el número de respuestas, corregirlo sería muy sencillo)
