Inicio de sesión

Ya sé Excel,
pero necesito más

El manual que
estabas buscando


Ya sé Excel,
pero necesito más

El manual avanzado
que estabas buscando
www.necesitomas.com

En línea

En este momento hay 0 usuarios y 3 invitados en línea.

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!

Imagen de pacomegia

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.

------

La potencia sin control no sirve de nada.
Power is nothing without control.

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.

Imagen de pacomegia

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.

------

La potencia sin control no sirve de nada.
Power is nothing without control.

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

Imagen de pacomegia

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

------

La potencia sin control no sirve de nada.

Power is nothing without control.

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.

Re: ya estoy en el buen camino

Este comentario ha sido movido aquí.

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!

Imagen de pacomegia

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.

------

La potencia sin control no sirve de nada.
Power is nothing without control.


necesitomas.com en tu página principal de Google

Google

Buscar en necesitomas.com

Encuesta