Visual Basic para Aplicaciones - Cuadro combinados de eliminación de valores consecutivos

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil
Val: 18
Ha aumentado su posición en 2 puestos en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Cuadro combinados de eliminación de valores consecutivos

Publicado por Alejandro (3 intervenciones) el 05/12/2020 19:23:59
Buenas estimados colegas.
tengo esta situacion.
tengo un formulario con los siguientes campos
fecha (cuadro de texto con formato fecha)
labor (cuadro combinado para seleccionar la labor y apartir de esta seleccion que aparezca el precio de la labor
cantidad de trabajadores ( grupo de opciones en el que selecciono la cantidad de trabajadores que hicieron la labor y en funcion de eso se me habilitan los cuadros combinados para identificar los trabajadores)
trabajadores (identifico los trabajadores que intervinieron en la labor)
precio de la labor (es el precio)
unidades (valor en el que se mide cuanto hicieron. por ejemplo cantidad de sacos que cargaron)
pago (precio de la labor por unidades)

el problema es que en trabajadores pueden haber habilitados hasta 4 cuadros combinados que me muestran la lista de trabajadores y quiero que al seleccionar un trabajador ya no me salga en los demas cuadros combinados.

espero que alguien pueda ayudarme. y muchas gracias de ante mano.
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
Imágen de perfil de Antoni Masana
Val: 1.134
Oro
Ha mantenido su posición en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Cuadro combinados de eliminación de valores consecutivos

Publicado por Antoni Masana (498 intervenciones) el 06/12/2020 10:15:02
Pues quítalos.
Sin ver que estas haciendo y como lo haces no puedo ayudarte, bueno ni yo ni nadie de este foro.
Hablas de: formulario y cuadros combinados y no se a que te refieres. Creo entender que cuadros combinados son TextBox o celdas combinadas, pero no me queda claro.
Por lo que cuentas podría estar hecho de muchas formas diferentes y cada una tiene una solución diferente.
Tendrías que subir el formulario para entender mejor lo que ha haces y lo que quieres hacer y una explicación más detallada.

Saludos.
\\//_
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
sin imagen de perfil
Val: 18
Ha aumentado su posición en 2 puestos en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Cuadro combinados de eliminación de valores consecutivos

Publicado por Alejandro (3 intervenciones) el 08/12/2020 01:29:35
Anotacion-2020-12-07-022545
2da
ese es el formulario.
lo que pasa es que hay veces que varios trabajadores (2 o 3 trabajadores) hacen la misma tarea y para evitar tener que hacer un registro para cada uno, pongo 4 cuadros combinados en los que elijo quienes son. pero al seleccionar al ''TRABAJDOR A'' en el 1er combobox no quiero que ese trabajador me salga en el segundo.
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
Imágen de perfil de Antoni Masana
Val: 1.134
Oro
Ha mantenido su posición en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Cuadro combinados de eliminación de valores consecutivos

Publicado por Antoni Masana (498 intervenciones) el 08/12/2020 20:05:13
Creo entender el problema.

El problema de la explicación es que las ideas las tenemos muy claras en nuestra cabeza pero cuando quedemos expresarnos las palabras se agolpan en la salida y nos sale un churro y soy el primero al que le pasa.

A ver si yo me se explicar lo que entiendo:

- Tienes una lista de trabajadores.
- Tienes una tarea que realizar o que ya se a realizado ( el tiempo es lo de menos)
- Para esta tarea se pueden asignar de 1 a 4 trabajadores.
- En función de la cantidad muestras de 1 a 4 listas desplegables donde seleccionas a los trabajadores, cada uno en cada una de las listas.

Y ahora viene el problema, si en la primera lista tienes los trabajadores de la A a Z y elijes el A ¿Cómo se hace para que en la segunda salgan de la B a la Z?

Puedes hacerlo de varias formas pero básicamente todas consisten en lo mismo:

Pongamos que empiezas a seleccionar por el primero de la izquierda (me refiero al trabajador), hay un evento que se ejecuta el recibir el enfoque el objeto, bien pues este evento lee la lista de trabajadores y según lo va añadiendo comprueba que no estén el los otros 3 objetos.
Además de la lista de trabajadores seria interesante añadir uno en blanco para hacer una anulación o cambio.
Otro detalle es guardar cual tenia antes de entrar para que después de cargar la lista quede seleccionado el que había, esto sirve por si vuelve para atrás.

Como te comentaba al principio las ideas están muy claras, expresarlas en palabras es otra historia.

Te pongo un ejemplo simple:

Pongamos que en la 1ª lista tenemos los siguientes nombres

- Adrián
- Carlos
- Marcos
- Lázaro
- Sergio

Y elige Carlos.

En la 2ª lista saldrán

- Adrián
- Marcos
- Lázaro
- Sergio

Y elige Sergio.

En la 3ª lista saldrán

- Adrián
- Marcos
- Lázaro

Elige Marcos y vuelve a la 1ª lista:

- Adrián
- Carlos
- Lázaro

No salen ni Sergio ni Marcos por que están el la 2ª y en la 3ª pero si sale Carlos por que lo escogimos en la 1ª y estamos en la 1ª

Saludos.
\\//_
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
sin imagen de perfil
Val: 18
Ha aumentado su posición en 2 puestos en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Cuadro combinados de eliminación de valores consecutivos

Publicado por Alejandro (3 intervenciones) el 08/12/2020 20:48:07
exactamente. de eso estaba hablando. disculpa no haberme explicado bien.
segui investigando y probando y ya lo consegui. Lo hize con el siguientes codigo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Private Sub CmbTrabajador_GotFocus()
    Me.CmbTrabajador.RowSource = "SELECT Trabajador FROM Trabajadores WHERE NOT Trabajador = '" & Me.CmbTrabajador_2 & _
    "' AND NOT Trabajador = '" & Me.CmbTrabajador_3 & "' AND NOT Trabajador = '" & Me.CmbTrabajador_4 & "'"
End Sub
Private Sub CmbTrabajador_2_GotFocus()
    Me.CmbTrabajador_2.RowSource = "SELECT Trabajador FROM Trabajadores WHERE NOT Trabajador = '" & Me.CmbTrabajador & _
    "' AND NOT Trabajador = '" & Me.CmbTrabajador_3 & "' AND NOT Trabajador = '" & Me.CmbTrabajador_4 & "'"
End Sub
Private Sub CmbTrabajador_3_GotFocus()
    Me.CmbTrabajador_3.RowSource = "SELECT Trabajador FROM Trabajadores WHERE NOT Trabajador = '" & Me.CmbTrabajador & _
    "' AND NOT Trabajador = '" & Me.CmbTrabajador_2 & "' AND NOT Trabajador = '" & Me.CmbTrabajador_4 & "'"
End Sub
Private Sub CmbTrabajador_4_GotFocus()
    Me.CmbTrabajador_4.RowSource = "SELECT Trabajador FROM Trabajadores WHERE NOT Trabajador = '" & Me.CmbTrabajador & _
    "' AND NOT Trabajador = '" & Me.CmbTrabajador_2 & "' AND NOT Trabajador = '" & Me.CmbTrabajador_3 & "'"
End Sub

estos son procedimientos que estan dentro de un formulario en access. lo que hace es que al recibir el foco uno de los combobox, este verifica el valor de los demas y los elimina de su lista.

Este es un proyecto que estoy haciendo para controlar el pago a los trabajadores del negocio familiar. Realmente le agradezco la ayuda.
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