Cumplir dos condiciones

10/10/2007 - 20:36 por vitobacon | Informe spam
Hola a todos.
¿Cómo puedo hacer cumplir dos condiciones?
Me explico: en una hoja tengo un rango de base de datos como este:

CALLE Nº POLICIA REF. CATASTRAL
ACERICA 1 100_001
ACERICA 2 100_002
ACERICA 3 100_003
CANOVAS 1 100_004
CANOVAS 2 100_005
CANOVAS 3 100_006
SAN ROQUE 1 100_007
SAN ROQUE 2 100_008
SAN ROQUE 3 100_009
SAN ROQUE 4 100_010


donde REF.CATASTRAL actuaría como un "campo clave" (no se repite).
En la hoja de al lado tengo lo siguiente:

HABITANTE CALLE Nº POLICIA REF. CATASTRAL
HOMBRE ACERICA 2 >>
HOMBRE ACERICA 2 >>
MUJER ACERICA 2 >>
HOMBRE SAN ROQUE 3 >>
MUJER SAN ROQUE 3 >>
MUJER SAN ROQUE 3 >>


y quiero que en la columna REF.CATASTRAL me aparezca el dato
correspondiente, leído de la otra hoja. Los tres primeros registros deberían
devolver 100_002 y los tres últimos deberían devolver 100_009.

Conozco la función BUSCARV pero no sé como introducirle dos condiciones.

Ya sé que si concateno los campos CALLE y NºPOLICIA puedo resolverlo con
BUSCARV, pero quiero saber cómo se resuelve sin tener que concatenarlos.

Muchas gracias.

Preguntas similare

Leer las respuestas

#1 varela_b
10/10/2007 - 23:30 | Informe spam
On 10 oct, 13:36, "vitobacon" wrote:
Hola a todos.
¿Cómo puedo hacer cumplir dos condiciones?
Me explico: en una hoja tengo un rango de base de datos como este:

CALLE Nº POLICIA REF. CATASTRAL
ACERICA 1 100_001
ACERICA 2 100_002
ACERICA 3 100_003
CANOVAS 1 100_004
CANOVAS 2 100_005
CANOVAS 3 100_006
SAN ROQUE 1 100_007
SAN ROQUE 2 100_008
SAN ROQUE 3 100_009
SAN ROQUE 4 100_010

donde REF.CATASTRAL actuaría como un "campo clave" (no se repite).
En la hoja de al lado tengo lo siguiente:

HABITANTE CALLE Nº POLICIA REF. CATASTRAL
HOMBRE ACERICA 2 >>
HOMBRE ACERICA 2 >>
MUJER ACERICA 2 >>
HOMBRE SAN ROQUE 3 >>
MUJER SAN ROQUE 3 >>
MUJER SAN ROQUE 3 >>

y quiero que en la columna REF.CATASTRAL me aparezca el dato
correspondiente, leído de la otra hoja. Los tres primeros registros deberían
devolver 100_002 y los tres últimos deberían devolver 100_009.

Conozco la función BUSCARV pero no sé como introducirle dos condiciones.

Ya sé que si concateno los campos CALLE y NºPOLICIA puedo resolverlo con
BUSCARV, pero quiero saber cómo se resuelve sin tener que concatenarlos.

Muchas gracias.



No quiero parecer greocero, pero en la ayuda de excel sobre esa
funcion biene bien explicado
Busca un valor específico en la columna más a izquierda de una matriz
y devuelve el valor en la misma fila de una columna especificada en la
tabla. Utilice BUSCARV en lugar de BUSCARH cuando los valores de
comparación se encuentren en una columna situada a la izquierda de los
datos que desea encontrar.

La V de BUSCARV significa "Vertical".

Sintaxis

BUSCARV(valor_buscado;matriz_buscar_en;indicador_columnas;ordenado)

Valor_buscado es el valor que se busca en la primera columna de la
matriz. Valor_buscado puede ser un valor, una referencia o una cadena
de texto.

Matriz_buscar_en es la tabla de información donde se buscan los
datos. Utilice una referencia a un rango o un nombre de rango, como
por ejemplo Base_de_datos o Lista.

Si el argumento ordenado es VERDADERO, los valores de la primera
columna del argumento matriz_buscar_en deben colocarse en orden
ascendente: ...; -2; -1; 0; 1; 2; ... ; A-Z; FALSO; VERDADERO. De lo
contrario, BUSCARV podría devolver un valor incorrecto.

Para colocar los valores en orden ascendente, elija el comando Ordenar
del menú Datos y seleccione la opción Ascendente.

Los valores de la primera columna de matriz_buscar_en pueden ser
texto, números o valores lógicos.

El texto en mayúsculas y en minúsculas es equivalente.

Indicador_columnas es el número de columna de matriz_buscar_en
desde la cual debe devolverse el valor coincidente. Si el argumento
indicador_columnas es igual a 1, la función devuelve el valor de la
primera columna del argumento matriz_buscar_en; si el argumento
indicador_columnas es igual a 2, devuelve el valor de la segunda
columna de matriz_buscar_en y así sucesivamente. Si indicador_columnas
es menor que 1, BUSCARV devuelve el valor de error #¡VALOR!; si
indicador_columnas es mayor que el número de columnas de
matriz_buscar_en, BUSCARV devuelve el valor de error #¡REF!

Ordenado es un valor lógico que especifica si BUSCARV debe
localizar una coincidencia exacta o aproximada. Si se omite o es
VERDADERO, devolverá una coincidencia aproximada. En otras palabras,
si no localiza ninguna coincidencia exacta, devolverá el siguiente
valor más alto inferior a valor_buscado. Si es FALSO, BUSCARV
encontrará una coincidencia exacta. Si no encuentra ninguna, devolverá
el valor de error # N/A.

Observaciones

Si BUSCARV no puede encontrar valor_buscado y ordenado es VERDADERO,
utiliza el valor más grande que sea menor o igual a valor_buscado.
Si valor_buscado es menor que el menor valor de la primera columna de
matriz_buscar_en, BUSCARV devuelve el valor de error #N/A.
Si BUSCARV no puede encontrar valor_buscado y ordenado es FALSO,
devuelve el valor de error #N/A.
Ejemplo

El ejemplo puede resultar más fácil de entender si lo copia en una
hoja de cálculo en blanco.

¿Cómo?

Cree un libro o una hoja de cálculo en blanco.
Seleccione el ejemplo en el tema de Ayuda. No seleccione los
encabezados de fila o de columna.


Seleccionar un ejemplo de la Ayuda

Presione CTRL+C.
En la hoja de cálculo, seleccione la celda A1 y presione CTRL+V.
Para alternar entre ver los resultados y ver las fórmulas que
devuelven los resultados, presione CTRL+` (acento grave) o, en el menú
Herramientas, elija Auditoría de fórmulas y, a continuación, haga clic
en Modo de auditoría de fórmulas.
El ejemplo utiliza valores correspondientes al aire a una presión de 1
atm.


1
2
3
4
5
6
7
8
9
10
A B C
Densidad Viscosidad Temperatura
0,457 3,55 500
0,525 3,25 400
0,616 2,93 300
0,675 2,75 250
0,746 2,57 200
0,835 2,38 150
0,946 2,17 100
1,09 1,95 50
1,29 1,71 0
Fórmula Descripción (Resultado)
=BUSCARV(1;A2:C10;2) Busca 1 in en la columna A y devuelve el valor de
la columna B en la misma fila (2,17).
=BUSCARV(1;A2:C10;3;VERDADERO) Busca 1 in en la columna A y devuelve
el valor de la columna C en la misma fila (100).
=BUSCARV(0,7;A2:C10;3;FALSO) Busca 0,746 en la columna A. Puesto que
no hay ninguna coincidencia exacta en la columna A, se devuelve un
error (#N/A).
=BUSCARV(0,1;A2:C10;2;VERDADERO) Busca 0,1 in en la columna A. Puesto
que 0,1 es menor que el valor más bajo de la columna A, se devuelve un
error (#N/A).
=BUSCARV(2;A2:C10;2;VERDADERO) Busca 2 in en la columna A y devuelve
el valor de la columna B en la misma fila (1,71).

esero haber sido de ayuda
Respuesta Responder a este mensaje
#2 Héctor Miguel
11/10/2007 - 02:39 | Informe spam
hola, !

1) comentarte que en las consultas (hablando de excel) resulta mas claro/leible/entendible/digerible/...
exponer rangos, nombres de hojas, tipo de datos (o sea, hablar en terminos de excel)...
que (tratar de) *graficar* una especie de tabla usando tabuladores, espacios de ajuste y similares
ya que la vision (igual que la intencion) dependera del juego de caracteres o pagina de codigos del equipo donde se *lean*

2) si suponemos que hablamos de la "hoja1" y de la "hoja2", y que el arreglo de tus datos es (parecido a) lo siguiente:
que los datos inician en la fila 2 con los titulos en la fila 1
hoja1: A1: calle, B1: n_policia, C1: ref.catastral
hoja2: A1: habitante, B1: calle, C1: n_policia, D1: ref.catastral <= columna donde necesitas la formula...

-> prueba con alguna de las siguientes opciones para inciar la formula en la celda 'D2' de la hoja2:
OJO que son formulas de entrada matricial (cuando las introduces/editas se deben confirmar con ctrl+shift+enter)
Y... mi sistema usa como separador de argumentos a la coma ',' NO al punto y coma ';' :D

op1: =indice(hoja1!$c$2:$c$11,coincidir(b2,si(hoja1!$b$2:$b$11Â,hoja1!$a$2:$a$11,0)))
op2: =indice(hoja1!$c$2:$c$11,coincidir(b2&c2,hoja1!$a$2:$a$11&hoja1!$b$2:$b$11,0))
op3: =indice(hoja1!$c$2:$c$11,coincidir(b2&"@"&c2,hoja1!$a$2:$a$11&"@"&hoja1!$b$2:$b$11,0))

la diferencia entre ellas podria depender del numero de filas/celdas donde la vayas a usar (velocidad de re/calculo)
y/o de la posibilidad de que alguna combinacion de *terminacion* de una celda con el *incio* de la otra (op2 y op3)

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.

__ la consulta original __
Como puedo hacer cumplir dos condiciones? Me explico: en una hoja tengo un rango de base de datos como este:
CALLE Nº POLICIA REF. CATASTRAL
ACERICA 1 100_001
ACERICA 2 100_002
ACERICA 3 100_003
CANOVAS 1 100_004
CANOVAS 2 100_005
CANOVAS 3 100_006
SAN ROQUE 1 100_007
SAN ROQUE 2 100_008
SAN ROQUE 3 100_009
SAN ROQUE 4 100_010
donde REF.CATASTRAL actuaría como un "campo clave" (no se repite).
En la hoja de al lado tengo lo siguiente:
HABITANTE CALLE Nº POLICIA REF. CATASTRAL
HOMBRE ACERICA 2 >>
HOMBRE ACERICA 2 >>
MUJER ACERICA 2 >>
HOMBRE SAN ROQUE 3 >>
MUJER SAN ROQUE 3 >>
MUJER SAN ROQUE 3 >>
y quiero que en la columna REF.CATASTRAL me aparezca el dato correspondiente, leido de la otra hoja.
Los tres primeros registros deberian devolver 100_002 y los tres ultimos deberian devolver 100_009.
Conozco la funcion BUSCARV pero no se como introducirle dos condiciones.
Ya se que si concateno los campos CALLE y NºPOLICIA puedo resolverlo con BUSCARV
pero quiero saber cómo se resuelve sin tener que concatenarlos.
Respuesta Responder a este mensaje
#3 rgotsens
11/10/2007 - 13:24 | Informe spam
Buenos días Héctor y con permiso Vitovacon,

En primer lugar muchas gracias por ayudar tanto, aportando luz a los
problemas de los demás.
Probando tus tres opciones, las dos últimas dan el resultado clavado
pero la primera, no sé dónde me he equivocado, me da como resultadoi
el último valor del rango c2:c11 de la hoja1, cómo si sólo comprobara
la condición del rango A2:A11.
..dónde me equivoqué?

Cordialmente,

Rafael
Respuesta Responder a este mensaje
#4 Héctor Miguel
11/10/2007 - 14:26 | Informe spam
hola, Rafael !

... las dos ultimas dan el resultado... pero la primera
... me da como resultado el ultimo valor del rango c2:c11 de la hoja1
como si solo comprobara la condicion del rango A2:A11.
... donde me equivoque?



y si comparas "textualmente" las formulas propuesta y utilizada ?
(copiando y pegando desde el mensaje, no he tenido diferencias) -?-

saludos,
hector.
Respuesta Responder a este mensaje
#5 rgotsens
11/10/2007 - 15:38 | Informe spam
On 11 oct, 14:26, "Héctor Miguel"
wrote:
hola, Rafael !

> ... las dos ultimas dan el resultado... pero la primera
> ... me da como resultado el ultimo valor del rango c2:c11 de la hoja1
> como si solo comprobara la condicion del rango A2:A11.
> ... donde me equivoque?

y si comparas "textualmente" las formulas propuesta y utilizada ?
(copiando y pegando desde el mensaje, no he tenido diferencias) -?-

saludos,
hector.



Hola Héctor,

Es verdad, lo siento, me equivoqué al escribirla (uso el ";" como
separador y por eso las suelo reescribir, a parte de que creo que de
este modo lo entiendo antes y me queda mas).
Gracias de nuevo,
Rafael
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida