Usuario
Línea de codigo con selec case y un checkbox

Pregunta
-
Buenas tardes, estoy comenzando en éste apasionante mundo de la programación y como novato en este aprendizaje me surgen problemas que no puedo resolver fácilmente. mi caso especial es el siguiente:
Tengo el siguiente código y no se como hacerlo funcionar lo he realizado de dos formas :
Forma 1:
Select Case Frm_SIAF.GroupB_Musculos
Case "No sé que colocarle aqui, el resto de código no crea conflicto:
If Frm_SIAF.Rdb_Pectoral.Checked = True Then
With Frm_SIAF.CheckedL_EjercicioMusculo
.Items.Add("Press plano Barra")
.Items.Add("Press Plano Mancuarna")
.Items.Add("Press Inclinado Barra")
.Items.Add("Press Inclinado Mancuerna")
.Items.Add("Press Declinado Barra")
.Items.Add("Press Declinado Mancuerna")
End With
End If
End SelectForma 2:
Select Case Frm_SIAF.GroupB_Musculos
Case Frm_SIAF.Rdb_Pectoral.Checked = True ' esta línea me genera conflicto
With Frm_SIAF.CheckedL_EjercicioMusculo
.Items.Add("Press plano Barra")
.Items.Add("Press plano Barra")
.Items.Add("Press plano Barra")
.Items.Add("Press plano Barra")
End With
End Select
End SubGracias por su ayuda...
Todas las respuestas
-
Te voy a colocar un ejemplo de Select Case, Supongamos que en un procedimiento existen solamente tres tipos de errores de la variable ERR, ERR=1 "No coinciden los tipos"; ERR=2 "No existe el objeto" y ERR=3 "Desbordamiento". Pero ese error solamente me lo devuelve en un numero entero, es decir {1,2,3}, entonces si sabemos la descripciónd el error entonces en este caso podemos hacer un Select Case de la Siguiente manera:
Private Sub DescripcionError Dim ERR As Integer 'Declaramos ERR como int ya que nos devolverá un entero que puede ser {1,2,3} Select Case ERR 'Colocamos la variable ERR después del select case Case 1 'Si ERR=1 MsgBox "No Coiciden los tipos" 'Nos manda un mensaje con la descripción que ya conocemos Case 2 'Si ERR=2 MsgBox "No existe el objeto" Case 3 'Si ERR=3 MsgBox "Desbordamiento" END 'Terminamos la estructura select case End Sub
También hay casos en que las condiciones requieren de rangos, por ejemplo, descripción de mérito segun sea su nota de 1 al 20:
Sub DescrNotas Dim Nota As Integer 'Si las notas requieren de precisión decimal la declaras como Double Select Case Nota Case 0 to 5 MsgBox "Muy deficiente" Case 6 to 10 MsgBox "Deficiente" Case 10 to 15 MsgBox "Bien" Case 15 to 20 MsgBox "Excelente" End Select End Sub
-
En algunos casos es mejor poner Is = True en ves de solo poner = True
seria a si
Case Frm_SIAF.Rdb_Pectoral.Checked Is = True
no se bien lo que estas programando pero segun veo es mejor que uses If para esos tipos de consulta en ves de usar un Select case
- Propuesto como respuesta Carlos_Ruiz_M lunes, 17 de junio de 2019 15:04