jueves, 15 de marzo de 2018

Personalizar el rango de entrada en un control de formulario

Hoy aprenderemos un truco para personalizar el rango de entrada de un control de formulario en nuestras hoja de cálculo, sin programación, para que condicione qué rango de elementos se mostrará en el cuadro combinado.

La idea es que nuestro cuadro combinado (control de formulario) muestre una lista de elementos u otra según una condición de una tercera celda:

Personalizar el rango de entrada en un control de formulario



Por tanto, si en la celda F2 de nuestra hoja marcamos una X el desplegable mostrará las ciudades del Listado1, en cualquier otro caso las ciudades del Listado2.

La clave para el éxito de esta tarea es emplear Nombres definidos.
Estos son los nombres definidos a emplear:
CiudadES =Hoja1!$A$2:$A$5
CiudadFR =Hoja1!$C$2:$C$4
selecciona =SI(Hoja1!$F$2="x";CiudadES;CiudadFR)


Fundamental el tercer nombre, al que le hemos asociado una fórmula que emplea la función condicional SI que nos devolverá un rango operable según la condición de la celda F2.


El siguiente paso, y último, consiste en acceder sobre el control (clic derecho) y entrar en el Formato del control par modificar el Rango de entrada y añadirle el nombre definido:
=selecciona

Personalizar el rango de entrada en un control de formulario



Listo... podemos comprobar que al cambiar la cela F2 el desplegable ofrece una u otra lista de ciudades tal como queríamos.

2 comentarios:

  1. ¡Muy bueno! Sencillo y extremadamente útil. Gracias, Ismael.
    He observado que también funciona con una función BUSCARV pasada por la función INDIRECTO, para los casos en que haya no dos sino unas cuantas listas que queramos ir alternando en el cuadro combinado (siempre que incluyamos en algún sitio la correspondiente tabla de correspondencias, obviamente).

    ResponderEliminar
    Respuestas
    1. ;-)
      sí... entiendo tu propuesta es igual de útil.
      Otra manera podría ser gestionar los rangos con la función ELEGIR

      Un cordial saludo y gracias por compartir tu idea!!

      Eliminar