|
Responder
|
| Autor | |
alfare
Colaborador
Unido: 28/Junio/2006 Localización: Colombia Estado: Sin conexión Puntos: 702 |
Tema: Cuadro de listas con codigos despendientesEnviado: 30/Agosto/2023 a las 05:51 |
|
Hola Tengo el siguiente reto: En la siguiente imagen hay una serie de ejemplos de códigos entre la columnas A y B. La columna A muestra los códigos de ejemplo de un producto terminado, mientras la columna B los códigos de los materiales que componen cada producto de la columna A. Necesito crear dos columnas D y F donde habrán cuadros de lista que permitirá escoger en la columna D el código del producto y cuando se seleccione, me devuelva en el cuadro de lista de la columna F de la fila correspondiente los códigos de los materiales que lo componen., y así sucesivamente en cada fila. PD : los códigos de producto terminado pueden ser alrededor de 380 y cado uno puede tener mínimo un código de parte hasta máximo 10. De antemano gracias a quien pueda ayudarme... |
|
|
Slds desde Cali Colombia
|
|
![]() |
|
xavi
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador
Terrassa-BCN Unido: 10/Mayo/2005 Localización: Catalunya |||| Estado: Sin conexión Puntos: 14926 |
Enviado: 31/Agosto/2023 a las 09:30 |
|
Hola,
Premisa 1: Imaginemos que puedes "disponer" de las columnas H en adelante. Premisa 2: Todas las filas de las columnas H en adelante están vacías. Premisa 3: partimos de los datos y la situación de tu imagen. Primer paso: obtener los registros filtrados de las columnas A:B al valor de producto de la celda D2 En la celda H2 utilizamos una función FILTRAR. Esa función nos filtrará los datos de una matriz a un criterio dado (en nuestro caso el que aparezca en D2). =FILTRAR($A$2:$B$11;$A$2:$A$11=D2) Aparece unos resultados en forma de matriz derramada. Segundo paso: del resultado obtenido, tomar solo la columna de la derecha. Utilizamos la función TOMAR por encima de la anterior. La función TOMAR puede quedarse con filas y/o columnas de una matriz. jugando con los argumentos y los signos obtenemos solo la columna de la derecha (mira la ayuda para más información). Así la celda H2 va a contener esta función: =TOMAR(FILTRAR($A$2:$B$11;$A$2:$A$11=D2);;-1) Tercer paso: vamos a poner los datos obtenidos en fila en lugar de columna. Utilizamos la función ENFILA: =ENFILA(TOMAR(FILTRAR($A$2:$B$11;$A$2:$A$11=D2);;-1)) Cuarto paso: manejar el error si no hay valor en la celda D2 =SI.ERROR(ENFILA(TOMAR(FILTRAR($A$2:$B$11;$A$2:$A$11=D2);;-1));"") Si copias esa función en cada fila, obtendrás la lista de posibles valores para cada valor de la columna D. Quinto paso: desplegable basado en la lista obtenida Establecer una validación de datos en la celda F2 de tipo lista. En el cuadro origen se selecciona la celda H2 (ojo, la fijará con $ que debemos quitar). El truco está en añadir el carácter # después de la referencia: =H2# Si copias la celda hacia abajo, ya lo tienes. Mejoras posibles: utilizar tablas en lugar de rangos y añadir desplegable a las celdas de la columna D. Espero te sirva. Un saludo |
|
![]() |
|
alfare
Colaborador
Unido: 28/Junio/2006 Localización: Colombia Estado: Sin conexión Puntos: 702 |
Enviado: 31/Agosto/2023 a las 22:04 |
|
Hola xavi.
Ante todo, muchas gracias por el tiempo que invirtió para darme una respuesta tan explicita. Aplique formula por formula y funciono perfecto. Quede gratamente sorprendido por lo potente que quedo...... Pueden cerrar este hilo y reitero nuevamente mis agradecimientos. |
|
|
Slds desde Cali Colombia
|
|
![]() |
|
Responder
|
|
|
Tweet
|
| Ir al foro | Permisos de foro ![]() Usted No puede publicar nuevos temas en este foro Usted No puede responder a temas en este foro Usted No puede borrar sus mensajes en este foro Usted No puede editar sus mensajes en este foro Usted No puede crear encuestas en este foro Usted No puede votar en encuestas en este foro |