formulario con preguntas y respuestas

10 envíos / 0 nuevos
Último envío
Rubén
Imagen de Rubén
Offline
última acción: Hace 16 años 6 meses
alta: 02/08/2007 - 14:38
Puntos: 191
formulario con preguntas y respuestas
Hola! Hace unos días adquirí su libro puesto que en mi trabajo me encargaron la realización de un proyecto que implica manejar Excel a un nivel superior al que hasta entonces tenía. La cuestión es que tengo que plantera un formulario de X preguntas con Y posibles respuestas (válidas más de una). En función de qué respuestas seleccione el usuario, el valor de cada pregunta de formularioo será distinto (entre cero y uno). Con todas las preguntas contestadas, un algoritmo matemático ponderará el valor de las cuestiones y en base a lo contestado, dará una solución final. Necesito ayuda!!! Cómo puedo enfocar el problema que se me planta?¿ Con una macro?¿ O hay algo más sencillo... Gracias de antemano. Saludos!
pacomegia
Imagen de pacomegia
Offline
última acción: Hace 2 días 4 horas
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntosadministrador
alta: 27/12/2006 - 23:26
Puntos: 11175
Re: formulario con preguntas y respuestas
En principio yo no utilizaría una macro. Me inclinaría por utilizar una celda auxiliar para cada pregunta, en la que se calculase el valor según las respuestas contestadas (suponiendo que el valor de cada pregunta dependa sólo de sus respuestas y no de las respuestas a otras preguntas). Según lo complicado que sea el cálculo de la valoración de cada respuesta utilizaría la Función condicional SI u otra cosa, habría que ver el caso concreto.

 

------
Ya sé Excel, pero necesito más.

Rubén
Imagen de Rubén
Offline
última acción: Hace 16 años 6 meses
alta: 02/08/2007 - 14:38
Puntos: 191
Re: formulario con preguntas y respuestas
Muchas gracias por contestar tan rápido. Intentaré seguir por la línea que me recomiendas pero sigo teniendo una duda. Resulta que para contestar el formulario, al lado de cada posible respuesta, mi idea era insertar un Check Box. La pregunta es: Cómo hago interactuar el checkBox con el peso que asigno a cada respuesta?¿ o es necesario usar el checkBox ?¿ Algún método auxiliar?¿ Gracias de nuevo.
pacomegia
Imagen de pacomegia
Offline
última acción: Hace 2 días 4 horas
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntosadministrador
alta: 27/12/2006 - 23:26
Puntos: 11175
Re: formulario con preguntas y respuestas
Utilizando controles de formulario en la hoja, se puede vincular el estado del control con una celda, en el caso de casillas de verificación (check box), la celda asociada tomará el valor VERDADERO o FALSO según esté activada o no la casilla. Luego se puede operar con estos valores para obtener el valor de la respuesta.

 

------
Ya sé Excel, pero necesito más.

Rubén
Imagen de Rubén
Offline
última acción: Hace 16 años 6 meses
alta: 02/08/2007 - 14:38
Puntos: 191
Re: formulario con preguntas y respuestas
Parece que ya he encontrado un camino de trabajo que puede funcionar. Lo que ocurre ahora es que se me plantea una cuestión vital para poder llevar adelante el proceso: Estoy usando funciones lógicas para hacer las preguntas del formulario (SI combinada con Y). En las casillas auxiliares donde he programado estas funciones, me aparece una serie de números entre 0 y 1 en función de las respuestas del usuario. De todas las combinaciones posibles, para el algoritmo princiapal del programa me interesa coger el valor máximo de la serie de valores que tengo en cada pregunta de formulario. Usando la función MAX no consigo nada pues aunque en las celdas aparezcan números como 0,25 o 0,67; en realidad está programado con las funciones lógicas y no me reconoce los números. ¿Existe solución a este problema? Gracias de nuevo
pacomegia
Imagen de pacomegia
Offline
última acción: Hace 2 días 4 horas
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntosadministrador
alta: 27/12/2006 - 23:26
Puntos: 11175
Re: formulario con preguntas y respuestas
Aunque las funciones sean lógicas, sí pueden dar como resultado un número y se podría utilizar la función MAX. no pongas los números entre comillas en los argumentos de tu función. comprueba el separador decimal de tu equipo. comprueba que el formato de las celdas no es Texto. Otra alternativa a las funciones lógicas es trabajar directamente con las operaciones lógicas dentro de las fórmulas, me explico con un ejemplo. si en una celda escribes la función =(A1<A2) devuelve 1 si es verdadero y 0 si es falso. puedes ir multiplicando estas comparaciones por unos pesos, y operar con ellos hasta llegar al resultado final. por ejemplo: =(A1<A2)*5 + (B1<>"")*3

 

------
Ya sé Excel, pero necesito más.

Rubén
Imagen de Rubén
Offline
última acción: Hace 16 años 6 meses
alta: 02/08/2007 - 14:38
Puntos: 191
ya estoy en el buen camino
Muchas gracias! Parece que no hay nada que me detenga en estos momentos así que ya se puede decir que estoy en el buen camino.
Rubén
Imagen de Rubén
Offline
última acción: Hace 16 años 6 meses
alta: 02/08/2007 - 14:38
Puntos: 191
Utilizando CheckBox
Hola de nuevo! Ya con el trabajo medio terminado me ha surgido un pequeño contratiempo. Resulta que al final me decidí a programar el formulario con checkbox usando en parte, Visual Basic. Pues bien, en programa en sí funciona a las mil maravillas. El problema llega a la hoja de querer proteger la hoja para que los usuarios puedan tener tan solo en derecho de hacer "click" en los citados checkbox. A pesar de desproteger los mismos en "Formato de control>Proteger", a la hora de ejecutar el programa me da un error con el siguiente mensaje: "Las celdas que intenta modificar están protegidas y por lo tanto son solo lectura. Para modificar una celda o gráfico protegidos, quite la protección usando el comando.................................." Pero si ya he hecho eso!!! Así que no se si algo que se me escapa. Muchas gracias de antemano. Saludos!
pacomegia
Imagen de pacomegia
Offline
última acción: Hace 2 días 4 horas
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntosadministrador
alta: 27/12/2006 - 23:26
Puntos: 11175
ActiveX vs control de formulario
Depende de si el control lo has tomado de la barra de herramientas "cuadro de controles" o si lo has tomado de la barra "formulario" en el primer caso se trata de un control ActiveX, mientras que en el segundo caso es un control propio de Excel, cada uno de ellos tiene diferentes propiedades. ambos tienen una propiedad que es Linked Cell en el primer caso (se accede a través de la ventana de propiedades del control) o en el segundo caso en Propiedades del Control>control>vincular con la celda, que vincula el valor del control (verdadero o falso) con una celda. Claro, si has protegido las celdas vinculadas, no te dejará cambiar el valor de las celdas vinculadas al pulsar con el ratón en el cuadro de la casilla de verificación o checkbox. Si utilizas celdas vinculadas para calcular el resultado de la respuesta, tendrás que dejarlas sin proteger. Otra posibilidad es no utilizar una celda vinculada, sino leer el estado de la casilla de verificación desde el código VBA como el resultado es verdadero o falso, lo puedes utilizar como condicional, por ejemplo, si tu casilla de verificación se llama CheckBox1, en el código de la hoja donde se encuentra se puede emplear: If Me.CheckBox1.Value Then ... Aunque creo que este objeto sólo aparece si se trata de una casilla de verificación ActiveX, es decir, tomada del cuadro de controles. Si la tomaste de los controles de formulario, Excel lo interpreta como un objeto de la colección Shapes y ahora mismo no te sé decir cómo acceder a su valor. Espero que estos comentarios te sirvan de ayuda.

 

------
Ya sé Excel, pero necesito más.

rabel01
Imagen de rabel01
Offline
última acción: Hace 16 años 3 semanas
alta: 25/03/2008 - 23:08
Puntos: 35
Re: ya estoy en el buen camino
Este comentario ha sido movido aquí.