Lista de validación con condiciones

09/12/2007 - 13:57 por Álvaro | Informe spam
Hola.
En una hoja llamada Hoja1 tengo en la celda C5 una lista de validación para
seleccionar un municipio.
En la celda E5 tengo otra lista para seleccionar la población, y quisiera
que en ésta me salieran sólo aquéllas poblaciones que pertenecen al
municipio anteriormente seleccionado (es decir, filtrar la lista desplegable
de poblaciones).

Mi base de datos está en una hoja llamada Poblaciones, abarca el rango
A1:H1191, y tiene en la columna A el nombre de la población y en la columna
D el municipio al que pertenece. Las columnas llevan encabezado.
Más a la derecha tengo una lista de municipios: columna M, rango M1:M46, con
encabezado

En la hoja Poblaciones:
Utilizo estos Nombres para preseleccionar los rangos:
Lista de municipios =Municipios: Poblaciones!$M$2:$M$46
Lista de poblaciones =Poblaciones: Poblaciones!$A$2:$A$1191
Base de datos de poblaciones =PoblacionesBD: Poblaciones!$A$2:$H$1191

En la Hoja1:
Utilizo estas fórmulas en la casilla "Origen" para las listas de validación:
Celda C5 (lista de municipios): =Municipios
Celda E5 (lista de poblaciones): ** AQUÍ ESTÁ LA DUDA **

Espero haberme explicado.
Un saludo y gracias.
Álvaro
 

Leer las respuestas

#1 AnSanVal
09/12/2007 - 19:06 | Informe spam
Te pongo un pequeño ejemplo con paises y ciudades [con nombres:
Menú>Insertar>Nombre>Definir...].

En este ejemplo (2 hojas: Principal y Listas):

Principal!A2 Validada para los paises. (Permitir: Lista) (Origen:
=paises
Principal!B2 Validada para las ciudades o No disponible. (Permitir:
Lista) (Origen: =SI(A2="";blanco;INDIRECTO(A2))

Listas!A1 (con nombre blanco) = "No disponible".
Listas!B1:E1 (con nombre paises) = "Alemania, España, Francia, Portugal
".
Listas!B2:B5 (con nombre Alemania) = "Colonia, Berlín, Hamburgo,
Munich".
Listas!C2:C6 (con nombre España) = "Almería, Barcelona, Madrid,
Tenerife, Toledo".
Listas!D2:D5 (con nombre Francia) = "Amiens, Lyon, París, Rennes".
Listas!E2:E5 (con nombre Portugal) = "Lisboa, Oporto, Ponte de Sor,
Setúbal".

En el módulo de la hoja Principal (para evitar ciudades incorrectas):

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$2" Then [B2].ClearContents
End Sub



Saludos desde Tenerife (Islas Canarias).
************************************************
"Álvaro" escribió en el mensaje
news:
Hola.
En una hoja llamada Hoja1 tengo en la celda C5 una lista de validación
para seleccionar un municipio.
En la celda E5 tengo otra lista para seleccionar la población, y quisiera
que en ésta me salieran sólo aquéllas poblaciones que pertenecen al
municipio anteriormente seleccionado (es decir, filtrar la lista
desplegable de poblaciones).

Mi base de datos está en una hoja llamada Poblaciones, abarca el rango
A1:H1191, y tiene en la columna A el nombre de la población y en la
columna D el municipio al que pertenece. Las columnas llevan encabezado.
Más a la derecha tengo una lista de municipios: columna M, rango M1:M46,
con encabezado

En la hoja Poblaciones:
Utilizo estos Nombres para preseleccionar los rangos:
Lista de municipios =Municipios: Poblaciones!$M$2:$M$46
Lista de poblaciones =Poblaciones: Poblaciones!$A$2:$A$1191
Base de datos de poblaciones =PoblacionesBD: Poblaciones!$A$2:$H$1191

En la Hoja1:
Utilizo estas fórmulas en la casilla "Origen" para las listas de
validación:
Celda C5 (lista de municipios): =Municipios
Celda E5 (lista de poblaciones): ** AQUÍ ESTÁ LA DUDA **

Espero haberme explicado.
Un saludo y gracias.
Álvaro

Preguntas similares