Tengo dos Combobox y varios Textbox y necesito que cuando uno de los combobox este ocupado el otro este en cero...

Tengo arriba dos Combobox y necesito que cuando este cargado el otro este en cero más ununo de los textbox de aabajo, más uno de cos Combox también de abajo, y luego viceversa para el otro Combobox de arriba.

1 respuesta

Respuesta
1

Declara una variable global, ejemplo

Dim cargando

En el evento change del combo1

If cargando = true exit sub

Combo2 = 0

Textbox2 = 0

Comboy = 0

' aquí el demás código que tengas.

'

'Luego pones en false la variable

Cargando  = false

End sub

En el evento del combo2

If cargando = true exit sub

Combo1 = 0

Textbox1 = 0

Combox = 0

' aquí el demás código que tengas.

'

'Luego pones en false la variable

Cargando  = false

End sub

Prueba y me comentas cualquier duda

¡Gracias! Muchas Gracias, rápida respuesta

Eusebio

He echo lo siguiente, pero no se produce nada, es decir se mantienen como antes, los combobox1 y Combobox4 se ejecutan cuando hago click en el boton1

Gracias

Eusebioi

Perdona las inconsistencias en mi código, te anexo como deben quedar los eventos chante de los combo 1 y 4

Nota: La declaración de la variable cargando, debe ir hasta el inicio de todo el código

Dim cargando
'
Private Sub ComboBox1_Change()
    If cargando = True Then Exit Sub
    '
    cargando = True
    ComboBox2 = 0
    TextBox7 = 0
    cargando = False
End Sub
'
Private Sub ComboBox4_Change()
    If cargando = True Then Exit Sub
    '
    cargando = True
    ComboBox1 = 0
    TextBox5 = 0
    TextBox8 = 0
    ComboBox2 = 0
    ComboBox5 = 0
    cargando = False
End Sub

No entiendo muy bien qué requieres hacer con el botón, pero primero veamos el funcionamiento de los combos 1 y 4.

Cuando seleccionas un dato del combo 4:

- Se activa el evento change del combo 4

- Pregunta por la variable cargando, la variable se encuentra en false, por lo tanto, continúa.

- Inmediatamente después cambia el valor de la variable cargando a True

- Cambias el combo 1 = 0, entonces se activa el evento change del combo 1.

- Entonces nos vamos al evento change del combo 1,

- La primera línea del evento change del combo 1 es:

       If cargando = True Then Exit Sub

Como en el evento Change del combo 4 cambiamos el valor de cargando = true, entonces se sale del evento change del combo 1, regresando el control al evento change del combo 4

- Entonces en el change del combo 4 continúa cambiando valores a los siguientes controles:

TextBox5 = 0
TextBox8 = 0
ComboBox2 = 0
ComboBox5 = 0

- Por último regresa el valor de la variable cargando = false


Prueba y me comentas. Después de probar la funcionalidad, revisamos lo que quieres hacer con el botón.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas