Funciones de busqueda

11
FUNCIONES DE BUSQUEDA BUSCAR Devuelve un valor de un rango de una fila o de una columna o de una matriz. La función BUSCAR tiene dos sintaxis, vectorial y matricial. La forma vectorial de BUSCAR busca un valor en un rango de una fila o de una columna (vector) y devuelve un valor desde la misma posición en un segundo rango de una fila o de una columna. La forma matricial de BUSCAR busca el valor especificado en la primera fila o en la primera columna de la matriz y devuelve el valor desde la misma posición en la última fila o columna de la matriz. Search, searching, búsqueda. Buscar o búsqueda, en informática, es la acción y/o procedimiento para encontrar o hallar algo. 1. Algoritmo de búsqueda: en programación, es un algoritmo que se utiliza para buscar un elemento dentro de una estructura de datos. 2. En internet y web, las búsquedas se hacen generalmente a partir de buscadores web como Google, Yahoo!, etc. Otra forma de búsqueda por internet son los directorios web. 3. En internet y web, el resultado de buscar en un buscador web es llamado resultados de búsqueda. 4. En estructuras de tipo árboles, la búsqueda en árboles hace referencia al procedimiento de visitar cada nodo dentro de una estructura de árbol de datos, de una forma sistemática. El orden en que se visita cada nodo permite clasificar las formas de búsqueda: pre orden, in orden, post orden. BUSCARV 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. Sintaxis

Transcript of Funciones de busqueda

Page 1: Funciones de busqueda

FUNCIONES DE BUSQUEDA

BUSCAR

Devuelve un valor de un rango de una fila o de una columna o de una matriz. La función BUSCAR tiene dos sintaxis, vectorial y matricial. La forma vectorial de BUSCAR busca un valor en un rango de una fila o de una columna (vector) y devuelve un valor desde la misma posición en un segundo rango de una fila o de una columna. La forma matricial de BUSCAR busca el valor especificado en la primera fila o en la primera columna de la matriz y devuelve el valor desde la misma posición en la última fila o columna de la matriz.

Search, searching, búsqueda. Buscar o búsqueda, en informática, es la acción y/o procedimiento para encontrar o hallar algo. 1. Algoritmo de búsqueda: en programación, es un algoritmo que se utiliza para buscar un elemento dentro de una estructura de datos. 2. En internet y web, las búsquedas se hacen generalmente a partir de buscadores web como Google, Yahoo!, etc. Otra forma de búsqueda por internet son los directorios web. 3. En internet y web, el resultado de buscar en un buscador web es llamado resultados de búsqueda. 4. En estructuras de tipo árboles, la búsqueda en árboles hace referencia al procedimiento de visitar cada nodo dentro de una estructura de árbol de datos, de una forma sistemática. El orden en que se visita cada nodo permite clasificar las formas de búsqueda: pre orden, in orden, post orden.

BUSCARV

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.

Sintaxis

BUSCARV (valor_buscado; matriz_de_comparación; 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_de_comparación   es el conjunto 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_de_comparación deben colocarse en orden ascendente: ...; -2; -1; 0; 1; 2; ...; A-Z; FALSO; VERDADERO. De lo contrario, BUSCARV podría devolver un valor incorrecto.

Page 2: Funciones de busqueda

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_de_comparación pueden ser texto, números o valores lógicos.

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

Indicador_columnas   es el número de columna de matriz_de_comparación 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_de_comparación; si el argumento indicador_columnas es igual a 2, devuelve el valor de la segunda columna de matriz_de_comparación 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_de_comparación, BUSCARV devuelve el valor de error #¡REF!

Ordenado   Es un valor lógico que indica si desea que la función BUSCARV busque un valor igual o aproximado al valor especificado. Si el argumento ordenado es VERDADERO o se omite, la función devuelve un valor aproximado, es decir, si no encuentra un valor exacto, devolverá el valor inmediatamente menor que valor_buscado. Si ordenado es FALSO, BUSCARV devuelve el valor buscado. Si no encuentra ningún valor, devuelve 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_de_comparación, 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.

Ejemplos

Dada una tabla con cuatro columnas en las que se presentan los días del mes en la primera columna, en la segunda columna la temperatura máxima de cada día, en la tercera columna la temperatura máxima y en la cuarta las horas de sol, dado un día, calcular las horas de sol que hubo ese día. Esta respuesta se puede obtener mediante la función BUSCAR (modo . También se puede obtener el mismo resultado con la función BUSCARA y también mediante el trabajo conjunto de las funciones COINCIDIR e ÍNDICE.

Page 3: Funciones de busqueda

En la tabla presentamos solo los 10 primeros días y el día a buscar lo situamos en la celda G3 en el ejemplo:

Sintaxis matricial:

BUSCAR(valor_buscado;matriz)

Para buscar la Temperatura mínima del ejemplo anterior con el valor correspondiente a la celda G3, la función sería:

=BUSCAR(G3;A3:C12) y el resultado sería 16. Apreciar como el rango de la matriz abarca de tal forma que la última columna sea en la que encontrar el valor deseado.

BUSCARH

Busca un valor en la fila superior de una tabla o una matriz de valores y, a continuación, devuelve un valor en la misma columna de una fila especificada en la tabla o en la matriz. Use BUSCARH cuando los valores de comparación se encuentren en una fila en la parte superior de una tabla de datos y desee encontrar información que se encuentre dentro de un número especificado de filas. Use BUSCARV cuando los valores de comparación se encuentren en una columna a la izquierda o de los datos que desee encontrar.

Sintaxis

BUSCARH(valor_buscado;matriz_buscar_en;indicador_filas; ordenado)

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

Page 4: Funciones de busqueda

Matriz_buscar_en   es una tabla de información en la que se buscan los datos. Utilice una referencia a un rango o el nombre de un rango.

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

Si el argumento ordenado es VERDADERO, los valores de la primera fila del argumento matriz_buscar_en deberán colocarse en orden ascendente: ...-2; -1; 0; 1; 2;..., A-Z, FALSO, VERDADERO; de lo contrario, es posible que BUSCARH no devuelva el valor correcto.

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

Se pueden poner los datos en orden ascendente de izquierda a derecha seleccionando los valores y eligiendo el comando Ordenar del menú Datos. A continuación haga clic en Opciones y después en Ordenar de izquierda a derecha y Aceptar. Bajo Ordenar por haga clic en la fila deseada y después en Ascendente.

Indicador_filas   es el número de fila en matriz_buscar_en desde el cual se deberá devolver el valor coincidente. Si indicador_filas es 1, devuelve el valor de la primera fila en matriz_buscar_en; si indicador_filas es 2, devuelve el valor de la segunda fila en matriz_buscar_en y así sucesivamente. Si indicador_filas es menor que 1, BUSCARH devuelve el valor de error #¡VALOR!; si indicador_filas es mayor que el número de filas en matriz_buscar_en, BUSCARH devuelve el valor de error #¡REF!

Ordenado   es un valor lógico que especifica si desea que el elemento buscado por la función BUSCARH coincida exacta o aproximadamente. Si ordenado es VERDADERO o se omite, la función devuelve un valor aproximado, es decir, si no se encuentra un valor exacto, se devuelve el mayor valor que sea menor que el argumento valor_buscado. Si ordenado es FALSO, la función BUSCARH encontrará el valor exacto. Si no se encuentra dicho valor, devuelve el valor de error #N/A.

Observaciones

Si BUSCARH no logra encontrar valor_buscado, utiliza el mayor valor que sea menor que valor_buscado.

Si valor_buscado es menor que el menor valor de la primera fila de matriz_buscar_en, BUSCARH devuelve el valor de error #N/A.

Ejemplos

Supongamos que en una hoja se guarda un inventario de repuestos. A1:A4 contiene "Ejes"; 4; 5; 6. B1:B4 contiene "Cojinetes"; 4; 7; 8. C1:C4 contiene "Engranajes"; 9; 10; 11.

Page 5: Funciones de busqueda

BUSCARH("Ejes"; A1:C4;2;VERDADERO) es igual a 5

BUSCARH("Cojinetes",A1:C4,3,FALSO) es igual a 7

BUSCARH("Cojinetes";A1:C4;3;VERDADERO) es igual a 8

BUSCARH("Engranajes";A1:C4;4;) es igual a 11

Matriz_buscar_en también puede ser una constante matricial:

BUSCARH(3;{1;2;3/"a";"b";"c"/"d";"e";"f"};2;VERDADERO) es igual a "c"

1. LA LÓGICA DETRÁS DE LA FUNCIÓN BUSCARV

Veamos la siguiente imagen para comprender un caso típico de uso de

BUSCARV

La función BUSCARV nos permite hacer una búsqueda de un elemento

concreto

dentro de una tabla (en nuestro caso buscamos el código de producto 602)

y una vez encontrado nos devuelve otros elementos asociados al mismo

(en nuestro caso nos dirá que corresponde al producto Tornillo 30 mm

y que su stock es de 34 unidades)2. LA SINTAXIS DE LA FUNCIÓN BUSCARV

La sintaxis (forma de escribir) BUSCARV es sencilla y solo requiere 4

argumentos:

= BUSCARV (valor buscado; tabla de búsqueda; columna de búsqueda; ¿tabla

ordenada?)

Page 6: Funciones de busqueda

En nuestro ejemplo, la fórmula que usamos en celda G3 para buscar el

Producto es:

=BUSCARV(G2;B2:D12;2;FALSO)

Buscar el valor del código indicado en G2 (lo que buscamos puntualmente) En

la tabla de B2:D12  (dónde lo buscamos)

y devolver el valor de la columna 2 de dicha tabla (columna que contiene lo que

buscamos)

¿la tabla está ordenada? FALSO (siempre conviene poner falso)

La fórmula que usamos para buscar el Stock es similar,

con la única diferencia que en el 3er argumento,

la columna que contiene lo que buscamos es la 3 en lugar de la 2

Cuando utilizar la función BUSCARH

Debemos utilizar la función BUSCARH cuando el valor que estamos buscando se encuentra en una fila de alguna tabla de datos. Por el contrario, la función BUSCARV realiza la búsqueda en una columna.

Sintaxis de la función BUSCARH

La función BUSCARH tiene tres argumentos que son los siguientes:

Page 7: Funciones de busqueda

Valor_buscado (obligatorio): El valor que estamos buscando. Matriz_buscar_en (obligatorio): El rango que contiene los valores y que

debe ser una fila. Indicador_filas (obligatorio): El número de fila que contiene el valor que

regresará la función. Ordenado (opcional): El valor debe ser FALSO si queremos una

coincidencia exacta o VERDADERO para una coincidencia aproximada.

Si la función BUSCARH no encuentra el valor que está siendo buscado regresará el valor de error #N/A.

Ejemplo de la función BUSCARH

En la siguiente tabla tengo la información de los artículos que ha vendido cada uno de los vendedores en los últimos meses. Como título de columnas están los nombres de los vendedores y como filas los meses.

Ahora quiero saber los productos vendidos en el mes de Febrero por Paco y para ello puedo utilizar la función BUSCARH de la siguiente manera:

Page 8: Funciones de busqueda

=BUSCARH("Paco", B1:D6, 3,FALSO)

El primer argumento es “Paco” porque es el vendedor que estoy buscando. El segundo argumento contiene todo el rango de datos sin incluir la columna de meses (columna A) porque no me interesa dicha información.

El tercer argumento es el número de fila que deseo que la función BUSCARH regrese como resultado. Ya que la fila con los nombres es la fila uno, entonces la fila para el mes de febrero es la fila número 3.

Finalmente coloca el valor FALSO en el cuarto argumento para indicar que deseo una coincidencia exacta al buscar a Paco. El resultado de esta fórmula es el siguiente:

Si quisiera busca la información del mismo mes para Luis, entonces la función cambiará de argumentos de la siguiente manera:

=BUSCARH("Luis", B1:D6, 3,FALSO)

Si por el contrario quiero conocer los productos vendidos por Hugo en el mes de Abril, entonces la función sería la siguiente:

=BUSCARH("Hugo", B1:D6, 5,FALSO)

De esta manera, la función BUSCARH nos permite hacer una búsqueda en una fila (búsqueda horizontal) y encontrar fácilmente el valor requerido.