Excel - Sintaxis con condicionales

 
Vista:
sin imagen de perfil
Val: 34
Ha aumentado su posición en 8 puestos en Excel (en relación al último mes)
Gráfica de Excel

Sintaxis con condicionales

Publicado por Guillermo (22 intervenciones) el 22/05/2021 14:05:29
Hola! Cómo están? Soy nuevo en el uso de macros y vba para excel y no puedo encontrar una sintaxis correcta para escribir lo que quiero hacer. Probé todo lo que encontré en la web como ejemplo pero no puedo darme cuenta del error o que instrucción me estaría faltando. Tengo esto asociado a un command button en un formulario:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
​If checkbox1.value = True (primer condicional) Then
          If segundo condicional Then
          Código segundo condicional verdadero
          Else
          Goto codigocondicionfalsa
          End If
 
 
 
If checkbox2.value = True (tercer condicional) Then
          If cuarto condicional Then
          Código tercer condicional verdadero
          Else
          Goto codigocondicionfalsa
          End If
 
 
codigocondicionfalsa:
      codigo…


Cómo está escrito ahora ejecuta el primer condicional, si no cumple la condición sigue adelante, ejecuta el tercero y si no cumple sigue adelante. Quisiera que no se ejecute el código “codigocondicionfalsa” si no se cumplen el primer o tercer condicional. Intenté poner las instrucciones end o stop antes del codigo y se me cierra el formulario que es lo que no quiero. Debería ponerlo en otro módulo y llamarlo desde ahi?

​Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 3
Ha aumentado su posición en 10 puestos en Excel (en relación al último mes)
Gráfica de Excel

Sintaxis

Publicado por David (11 intervenciones) el 22/05/2021 21:13:16
Hola, aun no entiendo bien que es lo que necesitas. Puedes poner un ejemplo mas especifico de lo que requieres porfavor?

Hice este ejemplo de estructura de como usar condiciones en 2 checkbox, pero en vez de usar goto, uso una llamada a una subrutina y le paso un parámetro.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Private Sub CommandButton1_Click()
 
    'CheckBox 1
    If CheckBox1.Value = True Then
        MsgBox "Verdadero Check 1"
    Else
        condicionFalsa "Check 1"
    End If
 
 
    'CheckBox 2
    If CheckBox2.Value = True Then
        MsgBox "Verdadero Check 2"
    Else
        condicionFalsa "Check 2"
    End If
 
 
End Sub
Sub condicionFalsa(CheckBox)
    MsgBox "Es falso el " & CheckBox
End Sub




Screenshot_1
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar