Cómo Vincular Una Lista Desplegable En Excel

Última actualización:

¿Te gustaría aprender cómo vincular una lista desplegable en Excel? Una lista desplegable de Excel es una característica útil cuando estás creando formularios de entrada de datos o paneles de Excel.

Muestras una lista de elementos como un menú desplegable en una celda, y el usuario puede hacer una selección en el menú desplegable. Esto podría ser útil cuando tienes una lista de nombres, productos o regiones que a menudo necesitas ingresar en un conjunto de celdas.

Ejemplo de una lista desplegables en Excel

A continuación te mostramos un ejemplo de una lista desplegable de Excel:

Aquí puedes leer sobre: Cómo Copiar Una Hoja Excel A Otro Libro – Tutorial

Cómo Vincular Una Lista Desplegable En Excel
Ejemplo de Una Lista Desplegable En Excel

En el ejemplo mostrado en la imagen, se ha usado los elementos en A2: A6 para crear un menú desplegable en C3. A veces, sin embargo, es posible que quieras utilizar más de una lista desplegable en Excel de modo que los elementos disponibles en una segunda lista desplegable dependan de la selección realizada en la primera lista desplegable.

Estos se denominan listas desplegables dependientes en Excel.

A continuación se muestra un ejemplo de lo que se quiere explicar con una lista desplegable en Excel dependiente:

Cómo Vincular Una Lista Desplegable En Excel

Puedes ver que las opciones en el menú desplegable 2 dependen de la selección realizada en el menú desplegable 1.

Si seleccionas ‘Frutas’ en el menú desplegable 1, se muestran los nombres de las frutas, pero si seleccionas Verduras en el menú desplegable 1, entonces se muestran los nombres de las verduras en el menú desplegable 2. Esto se denomina lista desplegable en Excel condicional o dependiente.

Crear una lista desplegable en Excel dependiente

Estos son los pasos para crear una lista desplegable en Excel dependiente:

  • Paso 1: Selecciona la celda donde quieres la primera lista desplegable (principal).
  • Paso 2: dirígete a Datos -> Validación de datos. Esto abrirá el cuadro de diálogo de validación de datos.
Datos -> Validación de datos
Datos -> Validación de datos
  • Paso 3: En el cuadro de diálogo de validación de datos, dentro de la pestaña de configuración, selecciona la opción Lista.

Datos -> Validación de datos

  • Paso 4: En el campo Fuente, especifica el rango que contiene los elementos que se mostrarán en la primera lista desplegable.
campo Fuente
Campo Fuente
  • Paso 5: Haz clic en Aceptar. Esto creará el menú desplegable 1.

campo Fuente

  • Paso 6: Selecciona el conjunto de datos completo (A1: B6 en este ejemplo).

campo Fuente

  • Paso 7: Dirígete a Fórmulas -> Nombres definidos -> Crear a partir de la selección (o puedes usar el atajo de teclado Control + Mayús + F3).
Fórmulas -> Nombres definidos -> Crear a partir de la selección
Fórmulas -> Nombres definidos -> Crear a partir de la selección
  • Paso 8: En el cuadro de diálogo ‘Crear nombre a partir de la selección‘, marca la opción Fila superior y desmarca todas las demás. Al hacer esto, se crean 2 rangos de nombres (‘Frutas’ y ‘Verduras’). El rango de frutas con nombre se refiere a todas las frutas de la lista y el rango de Verduras con nombre se refiere a todas las verduras de la lista.
Crear nombre a partir de la selección
Crear nombre a partir de la selección
  • Paso 9: Haz clic en Aceptar.
  • Paso 10: Selecciona la celda donde quieres la lista desplegable Dependiente / Condicional (E3 en este ejemplo).
  • Paso 11: Dirígete a Datos -> Validación de datos.
Datos -> Validación de datos
Datos -> Validación de datos
  • Paso 12: En el cuadro de diálogo Validación de datos, dentro de la pestaña de configuración, asegúrate de que Lista esté seleccionada.
Validación de datos
Validación de datos
  • Paso 13: En el campo Fuente, ingresa la fórmula = INDIRECTO (D3). Aquí, D3 es la celda que contiene el menú desplegable principal.
fórmula = INDIRECTO (D3)
fórmula = INDIRECTO (D3)
  • Paso 14: Haz clic en Aceptar.

Ahora, cuando realizas la selección en el menú desplegable 1, las opciones enumeradas en la lista desplegable 2 se actualizarán automáticamente.

¿Cómo funciona?

¿Cómo funciona esto? – La lista desplegable en Excel condicional (en la celda E3) se refiere a = INDIRECTO (D3). Esto significa que cuando seleccionas ‘Frutas‘ en la celda D3, la lista desplegable en E3 se refiere al rango denominado ‘Frutas’ (a través de la función INDIRECTA) y, por lo tanto, enumera todos los elementos de esa categoría.

  • Nota importante:si la categoría principal es más de una palabra (por ejemplo, ‘Frutas de temporada‘ en lugar de ‘Frutas‘), entonces debe usar la fórmula = INDIRECTO (SUSTITUIR (D3,”“,”_”)), en lugar de la función INDIRECTA simple que se muestra arriba.

La razón de esto es que Excel no permite espacios en rangos con nombre. Entonces, cuando creas un rango con nombre usando más de una palabra, Excel inserta automáticamente un guión bajo entre las palabras.

Por ejemplo: cuando creas un rango con nombre con ‘Frutas de temporada’, se llamará Season_Fruits en el backend. El uso de la función SUSTITUIR dentro de la función INDIRECTO asegura que los espacios  se conviertan en guiones bajos.

Restablecer / borrar el contenido de la lista desplegable dependiente automáticamente

Cuando hayas realizado la selección y luego cambies el menú desplegable principal, la lista desplegable dependiente no cambiará y, por lo tanto, será una entrada incorrecta.

  • Por ejemplo: Si seleccionas ‘Frutas’ como la categoría y luego seleccionas Apple como el elemento, y luego regresa y cambia la categoría a ‘Verduras’, el menú desplegable dependiente continuará mostrando Apple como el elemento.

Cómo Vincular Una Lista Desplegable En Excel

Puedes usar VBA para asegurarte de que el contenido de la lista desplegable dependiente se restablezca siempre que se cambie la lista desplegable principal. Aquí está el código VBA para borrar el contenido de una lista desplegable dependiente:

Private Sub Worksheet_Change (ByVal Target As Range)

En caso de error, reanudar siguiente

Si Target.Column = 4 Entonces

Si Target.Validation.Type = 3 Entonces

Application.EnableEvents = False

Target.Offset (0, 1) .ClearContents

Terminará si

Terminará si

exitHandler:

Application.EnableEvents = True

Salir de Sub

End Sub

¿Cómo funciona?

A continuación, se explica cómo hacer que este código funcione:

  • Paso 1: Copia el código VBA.
  • Paso 2: En el libro de trabajo de Excel donde tiene la lista desplegable dependiente, dirígete a la pestaña Desarrollador, y dentro del grupo ‘Código’, haz clic en Visual Basic (también puedes usar el atajo de teclado – ALT + F11).
ALT + F11
ALT + F11
  • Paso 3: En la ventana del editor de VB, a la izquierda en el explorador de proyectos, verás todos los nombres de las hojas de trabajo. Haz doble clic en el que tiene la lista desplegable.
editor de VB
editor de VB
  • Paso 4: Pega el código en la ventana de código a la derecha.

editor de VB

  • Paso 5: Cierra el editor de VB.

Ahora, cada vez que cambies la lista desplegable principal, se activará el código VBA y se borrará el contenido de la lista desplegable dependiente (como se muestra a continuación).

editor de VB

Si no eres experto en VBA, también puedes usar un truco de formato condicional simple que resaltará la celda siempre que haya una falta de coincidencia. Esto puede ayudarte a ver y corregir visualmente la falta de coincidencia (como se muestra a continuación).

editor de VB

Estos son los pasos para resaltar las discrepancias en las listas desplegables dependientes:

  • Paso 1: Selecciona la celda que tiene las listas desplegables dependientes.
  • Paso 2: Dirígete a Inicio -> Formato condicional -> Nueva regla.
Inicio -> Formato condicional -> Nueva regla.
Inicio -> Formato condicional -> Nueva regla.
  • Paso 3: En el cuadro de diálogo Nueva regla de formato, selecciona ‘Usar una fórmula para determinar qué celdas formatear‘.
Usar una fórmula para determinar qué celdas formatear
Usar una fórmula para determinar qué celdas formatear
  • Paso 4: En el campo de fórmula, ingresa la siguiente fórmula: = ESERROR (VLOOKUP (E3, INDEX ($ A $ 2: $ B $ 6,, MATCH (D3, $ A $ 1: $ B $ 1)), 1,0))
fórmula: = ESERROR (VLOOKUP (E3, INDEX ($ A $ 2: $ B $ 6,, MATCH (D3, $ A $ 1: $ B $ 1)), 1,0))
fórmula: = ESERROR (VLOOKUP (E3, INDEX ($ A $ 2: $ B $ 6,, MATCH (D3, $ A $ 1: $ B $ 1)), 1,0))
  • Paso 5: Configura el formato.
  • Paso 6: Haz clic en Aceptar.

También te puede interesar aprender sobre: Cómo Agrupar Una Tabla Dinámica Por Meses En Excel

La fórmula utiliza la función BUSCARV para comprobar si el elemento de la lista desplegable dependiente es el de la categoría principal o no. Si no es así, la fórmula devuelve un error. Esto es utilizado por la función ESERROR para devolver VERDADERO que le dice al formato condicional para resaltar la celda.

Como podrás ver, esta es la forma correcta de vincular una lista desplegable en Excel. Cada vez que puedas, toma este pequeño tutorial de práctica para que puedas aplicar esta característica útil. Esperamos haberte ayudado.

Deja un comentario