martes, 3 de abril de 2012

Validación por lista.


Rangos o variables con nombre:
DiasSem=Hoja2!$A$1:$A$7
MesActual=MES(AHORA())
Meses=INDIRECTO("Hoja2!$B$" & MesActual & ":$B$12")

Funciones utilizadas:
Ahora()
Indirecto()
Mes()

El Primer paso consiste en preparar la lista con los posibles datos válidos para la celda o celdas en cuestión. He preparado dos listas, una con los días y otra con los meses. Están en hoja2.

En el segundo paso hay que  insertar un rango con nombre para cada lista, mediante: Insertar->nombre->Definir. Se indica  nombre que vamos a dar a la lista  y el rango donde está la lista.

Para validar:
  1. Hay que seleccionar la celda o celdas.
  2. Mediante Datos->Validación y Selección de lista. En origen pones =Nombrelista (en el ejemplo DiasSem o Meses). 
Una de las listas es de contenido fijo y la otra de contenido variable. La lista DiasSem es una lista de contenido fijo, y la lista Meses es una lista de contenido variable. 


  • El supuesto del que parto para esta lista variable es el de no poder seleccionar meses anteriores al mes actual.
  • Mediante Mes(ahora()) calculo el mes actual.
  • Mediante  Meses=INDIRECTO("Hoja2!$B$" & MesActual & ":$B$12") hago variable la lista.