
Estoy intentando crear una lista desplegable de dependientes para una escuela secundaria. El usuario seleccionará la celda A1, hará clic en el pasillo 3 (por ejemplo), luego hará clic en la celda A1 nuevamente y luego seleccionará la habitación #, 325 (por ejemplo). El resultado final debería ser que la celda A1 muestre 325. Puedo crear la primera lista desplegable, pero la segunda parte es donde tengo grandes problemas. Estoy usando Excel 2010. Cualquier ayuda sería apreciada. Gracias
Respuesta1
Dudo que sea posible hacer eso en la misma celda (A1 para el primer elemento y luego nuevamente en la misma celda para el segundo elemento). Yo tuve un problema similar yestees lo que usé para resolverlo. Ahora tengo varios menús desplegables que dependen unos de otros, en la primera hoja del libro de Excel que algunos de mis colegas están usando para "completar el formulario" :)AquíTambién es un buen ejemplo de cómo resolver este problema.
Tabla de ejemplo que podría ser algo que necesitas
A B
HALLWAY ROOM
Hallway 3 353
Hallway 3 325
Hallway 1 157
Hallway 1 124
Hallway 2 234
Hallway 2 265
Cree dos listas desplegables.
La primera lista desplegable contiene valores distintos únicos de la columna A. La segunda lista desplegable contiene valores distintos únicos de la columna B, según el valor elegido en la primera lista desplegable.
Cree un rango con nombre dinámico en Fórmulas > Administrador de nombres > Nuevo > asígnele un nombre hallway
> colóquelo =OFFSET(Sheet1!$A$2,0,0,COUNTA(Sheet1!$A$2:$A$1000))
en el campo "Se refiere a:" > Cerrar
Cree una lista distinta única a partir de la columna A. Seleccione Hoja2 > seleccione A2 > escriba "=INDEX(hallway,MATCH(0,COUNTIF($A$1:A1,hallway),0))"
+ CTRL + MAYÚS + ENTRAR > Copie la celda A2 y péguela tanto como sea necesario.
Cree un rango con nombre dinámico para obtener una lista distintiva única en Fórmulas > Administrador de nombres > Nuevo > asígnele un nombre uniqhall
> colóquelo =OFFSET(Sheet2!$A$2, 0, 0, COUNT(IF(Sheet2!$A$2:$A$1000="", "", 1)), 1)
en el campo "Se refiere a:" > Cerrar
Crear lista desplegable > Seleccionar Hoja1 > Seleccionar celda D2 > Haga clic en Datos > Botón de validación de datos > Validación de datos > Permitir: Lista > Fuente: =uniqhall
> Ok
Lista única secundaria basada en un solo valor de celda elegido en la primera lista desplegable.
Cree un rango con nombre dinámico en Fórmulas > Administrador de nombres > Nuevo > asígnele un nombre room
> colóquelo =OFFSET(Sheet1!$B$2,0,0,COUNTA(Sheet1!$B$2:$B$1000))
en el campo "Se refiere a:" > Cerrar
Cree una lista distinta única a partir de la columna B. Seleccione Hoja2 > seleccione B2 > escriba "=INDEX(room, MATCH(0, COUNTIF($B$1:B1, room)+(order<>Sheet1!$D$2), 0))"
+ CTRL + MAYÚS + ENTRAR > Copie la celda B2 y péguela tanto como sea necesario.
Cree un rango con nombre dinámico para obtener una lista distintiva única en Fórmulas > Administrador de nombres > Nuevo > asígnele un nombre uniqroom
> colóquelo =OFFSET(Sheet2!$B$2, 0, 0, COUNT(IF(Sheet2!$B$2:$B$1000="", "", 1)), 1)
en el campo "Se refiere a:" > Cerrar
Crear lista desplegable > Seleccionar Hoja1 > Seleccionar celda D5 > Reloj en Datos > Botón de validación de datos > Validación de datos > Permitir: Lista > Fuente: =uniqroom
> Ok
Espero que esto resuelva tu problema hasta algún punto :)
Respuesta2
Realmente no puedes usar el mismo celular para eso.
Lo que puedes hacer es usar la celda al lado. Si bien parece que la respuesta de Robert Schmidt funcionará, un método alternativo (y en mi opinión más simple) para la misma característica seríalistado aquí.
Utiliza el mismo tipo de idea, pero sólo requiere una fórmula única y sencilla. Según la descripción de su problema, en realidad no necesita rangos dinámicos (por muy interesantes que sean).
La esencia del método es organizar las selecciones de usuario en una sola tabla con la primera selección a la izquierda, luego cada una de las selecciones posteriores se enumera en una columna diferente a la derecha.
por ejemplo, Pasillo #34 | Habitación 1 | Habitación 2 | Habitación 3.....
Luego, utilizando el Administrador de nombres y la herramienta de creación de nombres a partir de la selección, asigna automáticamente cada pasillo en la primera columna como un 'Nombre' a las habitaciones en la misma fila.
Finalmente, utiliza la función Validación de datos por lista para crear sus listas desplegables, una para la selección del pasillo y una segunda para la selección de la habitación. Usted hace que el segundo dependa del primero usando una fórmula simple =INDIRECTA en la validación de datos de la segunda columna.
Sugeriría ir a la sección de comentarios, ya que un usuario señaló que puede usar la función =SUSTITUIR para manejar los espacios en los valores de Pasillo y Habitación.