Professional Documents
Culture Documents
En vez de empezar el ejemplo de cero voy a dar por sentado que tenemos el ejemplo inicial
que os comentaba en el primer párrafo totalmente hecho, y sobre él aplicaremos la
modificación del código (es lo único que debemos modificar).
Como vemos, en el ejemplo original utilizábamos un bucle SELECT...END SELECT para evaluar
las posibilidades.
El código que nos propone Antonio Salvá es el siguiente (he añadido los comentarios para que
se entienda mejor el código):
…
Private Sub mrcCurso_AfterUpdate()
'Declaramos las variables
Dim vCurso As Integer
Dim miSql As String
'Cogemos el valor marcado en el marco de opciones
vCurso = Me.mrcCurso.Value
With Me
'Asignamos un valor booleano (True/False) a la propiedad "Visible"
'de los cuadros de texto que nos indican los niveles de los diferentes
'cursos en función de la opción seleccionada (que nos viene dada por la
'variable vCurso
.NivelExcel.Visible = vCurso = 1
.NivelAccess.Visible = vCurso = 2
.NivelWord.Visible = vCurso = 3
End With
'Nos creamos la SQL que asignaremos como origen de la fila del combo Prof
miSql = "SELECT TProfes.NomProf FROM TProfes WHERE TProfes.Assig='" & _
Choose(vCurso, "Excel", "Access", "Word") & "'"
'Asignamos el origen de la fila del combo
Me.Prof.RowSource = miSql
'Forzamos la lectura de los nuevos datos del combo
Me.Prof.Requery
End Sub
…
Un par de comentarios:
1
Visítame en http://siliconproject.com.ar/neckkito/
Fijaos que para asignar el valor de la propiedad “Visible” utilizamos la “veracidad o no” de
una igualdad.
Quiero agradecer a Antonio Salvá que me haya sugerido esta solución alternativa para el
ejemplo y que me haya permitido compartirla con todos vosotros.
Y eso es todo. Espero que este ejemplo os sea útil. Un saludo, y...
¡Suerte!
2
Visítame en http://siliconproject.com.ar/neckkito/