plis es urgente!!!

thelma
09 de Octubre del 2003
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

Baltasar
09 de Octubre del 2003
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)