Como actualizar un cuandro combinado

Este es mi caso: Tengo una base de datos en access 2003, la cual es utilizada para agendar citas médicas en una clínica. Actualmente para agendar la cita debo digitar en un formulario la especialidad el cual al actualizar ese campo me abre otro formulario que carga los médicos de esa "especialidad" en un cuadro combinado donde puedo elegir el médico, asignar el día de la cita y en un subformulario ver que pacientes tiene para ese día.
Lo que necesito hacer es que, tanto la opción de digitar la especialidad como la de elegir el médico, estén en el mismo formulario, sin necesidad de abrir un segundo para únicamente actualizar el valor que lo tengo condicionado al campo "especialidad". Lo he intentado colocando los dos campos combinados en el mismo formulario, pero si coloco una especiliadad, por ejemplo: elijo medicima general y me muestra los médicos generales, pero si luego la cambio por GINECOLOGÍA, no me muestra los ginecólogos, sino los médicos generales, no se actualiza el campo combinado "médicos". Lo que quiero es que cuando yo elija una especialidad, se actualice los datos que me va a mostrar en el campo médicos. Espero que me entienda. Muchas gracias.
Cabe aclarar que el cuadro combinado "medicos" esta condicionado con el campo "Especialdiad".
Jorge rosero

1 Respuesta

Respuesta
1
Lo que pasa es que no actualizas el formulario. En el cuadro combinado dónde eliges la especialidad, en la acción Al hacer clic ---> Procedimiento de Evento ---> Me. Refresh
Esto es para que cada vez que elijas una especialidad, con un clic, se actualice el formulario y por tanto se actualice el origen de la fila del combox médicos.
Quizás te pueda ayudar el supuesto "Cuadros Combinado en Cascada" que tengo en mi página web: http://angelessebas.es/
Me cuentas.
Angeles, muchas gracias por responderme.
Su procedimiento es correcto si lo realizo en un formulario que no tenga origen de datos o formulario independiente, lo que sucede con mi formulario es que es de "entrada de datos" y algunos son obligatorios, lo que no permite actualizar el formulario.
Su sugerencia me es muy útil de todas formas, pero me tocaría "independizar" todos los campos del formulario que tengo para que cuando se decida agregar el campo o agendar la cita medica correcta, hacer que cada campo independiente envíe su valor al campo que tenga su respectivo origen de control de la tabla, uno por uno en una sola acción, ¿es correcto?
Muchas gracias nuevamente.
Jorge Rosero
Entiendo, en tú caso lo mejor sería poner el origen de la fila del 2º combox al hacer clic en el 1º. Es decir, supongamos que el cuadro combinado dónde eliges los médicos que depende del cuadro especialidades se llama selMedico, en el cuadro dónde eliges la especialidad, en la acción al hacer clic: Procedimiento de evento --->
Form!selMedico.Rowsource="Select Medico from Medicos where Especialidad='" & form!selEspecialidad.Value & "'"
Suponiendo que la tabla se llama Médicos, los campos Medico y especialidad y el cuadro combinado selEspecialidad.
Me cuentas.
Muchas gracias
Me fue muy útil su ayuda!
Pero ahora tengo otra pregunta, tengo el campo "DiaCita" que es el día que le voy a dar la cita al paciente, quiero que me aparezca un calendario, pero solo me muestre activos los días del mes que tenga activos para atender (tengo otra tabla de "AgendaMedico" donde se registran los martes, jueves y algunos viernes del mes, por ejemplo).
Y que cuando le de clic al calendario, me coloque esa fecha en un campo independiente que tengo en el mismo formulario.
Muchas gracias
No conozco ningún método para habilitar o deshabilitar los días en un control calendario. Creo que tendrás que jugar con excluir días de la semana que no tengan citas. Yo lo haría con la función Weekday(), esta función te devuelve el nº del día de la semana. Por ejemplo:
If weekday(form!NombrecontrolCalendario.value, 2)=4 then
4 ----> Jueves
mesgbox("Día incorrecto")
End if
Me cuentas, saludos Angeles
*** Si quieres ejemplos de las funciones, en mi página web http://angelessebas.es/ en el supuesto funciones tienes las funciones de fecha.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas