Una de las funciones más utilizadas en
Calc de
LibreOffice (u
OpenOffice) es
BUSCARV. Se trata de una
función que nos servirá para mostrar datos de una tabla a partir de otros conocidos. Por ejemplo, que al introducir un DNI nos aparezca el nombre, apellidos, dirección... de la persona concreta en las celdas que queramos.
Vamos a aplicar el ejemplo concreto propuesto en la
práctica 15 (que podéis
descargar desde aquí en formato ods).
El planteamiento del ejercicio es el siguiente. Contamos con un inventario de almacén muy sencillo.
Vemos que clasifica, a través de un identificador, el producto, su descripción, los artículos que quedan en el almacén, lo que cuesta el producto y el dinero total del almacén.
Lo que pretendemos es que, a partir de el identificador podamos conocer el resto de datos. Es decir, con introducir el número correspondiente a un producto nos aparezca el nombre del producto o el coste por unidad, por ejemplo.
Concretando un poco, debemos utilizar para ello la función BUSCARV, de manera que con añadir un código identificador (columna Id. aparezca el producto en su columna).
Posicionándonos sobre C5 debemos insertar la función BUSCARV. Desde el asistente nos abre la siguiente ventana:
1. valor_buscado. Se trata de definir que valor es el que tendrá que coincidir en la otra tabla, es decir, el valor referencia. En nuestro ejemplo es el valor que escribamos en B5, es decir, el identificador que escribamos a mano.
2. matriz_buscar_en. Debemos seleccionar toda la tabla a relacionar incluyendo como primera columna la referencia y hasta la columna en la que aparezca el valor que queremos encontrar, en el ejemplo sería hasta la columna producto, es decir, la columna C. A diferencia del valor buscado, que es relativo (es decir, al arrastrar la fórmula queremos que se desplace), la matriz es absoluta, esto es inmóvil y, por lo tanto, requiere del símbolo dolar en todas sus coordenadas ($, F4).
3. índice. Define la columna en la que está el valor que nos interesa. Si hemos dicho que la columna del valor referencia es la primera, contaremos a partir de ella hasta su posición (en el ejemplo buscamos el nombre del producto, por lo tanto, la segunda columna y pondremos un 2).
4. ordenado. Básicamente implica la precisión de la relación, es decir, si ponemos un "0" sólo relacionará valores exactamente iguales; si ponemos un "1" dará un margen de imprecisión (mayúsculas por minúsculas, un error en una letra...).
De esta forma completaríamos la columna producto de la tabla control de pedidos de forma inmediata. Si queremos repetir la misma fórmula para saber si, con el stock del almacén somos capaces de cubrir el pedido, la operación es poco más compleja puesto que mezcla la opción BUSCARV con la función SI. El planteamiento sería: Si el número de artículos pedidos (D5) es mayor que el número de artículos en stock, no podremos satisfacer el pedido, si no se cumple dicha condición si podremos cumplirlo. En fórmula sería algo así:
=SI(D5>XXX;"NO";"SI")
Para completar la función, en el lugar que hemos escrito XXX, debiera aparecer una función BUSCARV que, directamente nos relacione el número de identificador que hayamos escrito con la correspondiente cantidad de producto en el almacén. Es decir, si introducimos un 4, nos debe relacionar ese dato con la cantidad de Kaspersky que tenemos en el almacén.
Por lo tanto, D% debe ser mayor que el valor que nos muestre la función BUSCARV. En este caso BUSCARV volverá a tener como valor_buscado B5 (el identificador); como matriz_buscar_en, el rango que va desde B28 hasta E37, con dolores por ser absolutas; el índice, el valor con el que nos interesa relacionar el identificador es el de la 4ª columna (Nº de artículos disponibles); y que sea exacto (0).
=SI(D5>BUSCARV(B5;B$28:$E$37;4;0);"NO";"SI")
Nota. La función BUSCARH se utiliza exactamente igual pero considerando un trabajo en filas en lugar de en columnas.
Además. Puedes añadir a la fórmula que cuando la casilla del identificador se quede en blanco deje la celda en blanco en lugar de #N/A (no aplicable).
ENLACES DE INTERÉS: