ortizvivas.com

Blog sobre emprendimiento y programación

  • Acerca de Mí
  • Proyecto Kentana
  • Core
  • Contacto
Usted está aquí: Inicio / Curso Virtual / Clase 9 – Búsqueda y referencia – formulas de Excel

31/08/2015

Clase 9 – Búsqueda y referencia – formulas de Excel

Este curso se encuentra descontinuado, si te gustaría que lo retome puedes usar el formulario de contacto que se encuentra en la derecha –>>


Bienvenidos a esta la novena clase del este el curso virtual


El archivo de esta clase acá >> Clase 9 – Búsqueda y referencia – formulas de Excel – Ejercicio


El día de hoy revisaremos estas fórmulas que usamos al buscar alguna información en nuestros libros de Excel, hagamos un listado de las más útiles pero primero tenemos que hablar de un concepto importante la llave primaria

Entendiendo el concepto de llaves primarias

Este tema se habla mucho en la programación, significa que por cada columna hay un identificador único y no puede repetir en dicha columna, por ejemplo en una lista de ciudadanos sería la Cédula de ciudadanía. Cuando voy a crear algún sistema lo primero que uno hace en el desarrollo como tal es la estructura de las tablas que en esto si se parece al Excel, pero luego en términos generales se busca una llave primaria para cada tabla, para poder hacer referencias en informes y para otros procesos.

¿Se pueden crear tablas sin llaves primarias?, claro que si, en Excel la mayoría de las veces ninguna tabla de información tiene un identificador único claro, en la programación pasa lo mismo y cuando no esta claro, por ejemplo en una lista de visitas de clientes, la cédula se repite en cada visita, por lo que ya no sería una llave primaria entonces se usa un ID de visita por ejemplo.

Cuando se van a buscar datos en las tablas de Excel por lo general se habla de BUSCARV  y veremos en el siguiente listado las fórmulas de búsqueda y referencia las que considero de mayor utilidad.

  • BUSCAR = Buscar un valor en una columna o fila, en algunas versiones no registra el buscar ya que este se ha implementado para que funcione como emergente en versiones anteriores a Excel 2013
  • BUSCARV = Busca un valor en la primera columna de una matriz indicada, devuelve el valor en la columna que le digamos, es el más común pero el menos recomendado, ya hablaremos sobre eso
  • BUSCARH = Busca un valor en la primera fila de una matriz, es el inverso a BUSCARV y la verdad no es tan útil pero es bueno saber como funciona por si se presenta algo, pero estamos acostumbrados a una tabla convencional que casi nunca se usa
  • INDICE=Es como buscar una dirección, le decimos la fila y la columna y nos trae ese dato
  • COINCIDIR = Nos indica en que posición de una columna se encuentra un dato.
  • FORMULATEXTO = ¿Recuerdas que cuando queríamos escribir una formula sin que se activara utilizábamos el formato TEXTO o escribíamos empezando por la comilla sencilla? (‘), bueno con esta fórmula le indicamos de que celda que tenga otra fórmula nos escriba en formato TEXTO lo que tiene, sin tener que utilizar la comilla o cambiar el formato, de ahora en adelante utilizare esta fórmula para los archivos
  • HIPERVINCULO = Esta formula permite mostrar un texto y enviar a alguna parte del documento al darle clic, a esta celda, también podemos enviarlo a otro libro, a otro tipo de archivo, a una carpeta, una pagina web, etc.

Buenos acá vimos la descripción de cada una pero ahora debemos entender otro concepto

Las llaves foráneas

Ya explicamos cuales serían las llaves primarias para una tabla, estas llaves foráneas lo que hacen es hacernos una referencia de una llave primaria de otra tabla y en términos generales se puede repetir en mi tabla por ser foránea. Espera un momento que me perdí, ¿tienes un ejemplo? , claro que si, dijimos que en una tabla de clientes la llave primaria sería la cédula por que no se repite, bueno, ahora tenemos otra tabla una tabla de visitas, su estructura, o sus columnas si lo hacemos en Excel seria algo como ID visita (Llave primaria de esta tabla), ID Cliente (Llave foránea porque vamos a referenciar un cliente que vino, pero un cliente puede venir varias veces), Hora visita, No productos comprados, Tiempo en la tienda.

Entonces si la llave primaria es ID Visita y la foránea es ID cliente podría suceder algo como esto:

Informe de visitas a nuestra tienda en ortizvivas.com
ID Visita ID Cliente
1 1
2 1
3 3

El Número de la visita no se repite, pero el cliente vino varias veces, hasta acá esta claro pero que ventajas tendría yo si solo pongo la llave primaría de todas formas le voy a pedir la cédula cada vez que venga, bueno sí pero cada vez que venga el cliente le vas a preguntar, la cédula, los nombres, los teléfonos, el correo, etc. Si solo le preguntas la cédula haces una venta más rápida y no aburres al cliente por dar un ejemplo.

Veamos con ejemplos como funcionan cada una de estas fórmulas que nombramos arriba, primero tenemos 2 tablas la de visitas y la de clientes

cl9im1

Por lo general no se pone una tabla debajo de la otra porque cuando lleguen más visitas de las que hay en el espacio tendremos que estar corriendo la otra tabla, pero para este ejemplo lo haremos así

La tabla de visitas tiene un ID de cliente que es la llave foránea pero también tiene el nombre y la ciudad del cliente, la idea es que no tengamos que estar llenando estos datos cada vez y en programación esto no se hace sino que después lo que se le muestra al usuario es un informe que se ve como acá, pero como estamos con Excel entonces no hay problema y hoy a modo de ejemplo tampoco pues tenemos un informe y una tabla en un solo paso.

Lo primero que pasaría, suponiendo que tienes una tienda física normal, es que algún sensor podría registrar la siguiente información

cl9im2

Pero aún no tienes la información del cliente, supongamos que va a comprar un producto, lo primero que tienes que hacer es buscar si ya existe, pero en este caso como no tenemos ningún cliente registrado, procedemos a solicitarle los datos básicos

cl9im3

Ahora vamos a relacionar la visita con el cliente

Con Buscar

 

cl9im4

La función buscar nos ofrece 2 opciones una con tres opciones, o parámetros y una con dos, tengamos en cuenta que el parámetro que esta entre corchetes cuadrados no es obligatorio, en este caso vamos a buscar el nombre del cliente con cédula 1, entonces en ese primer parámetro que nos pregunta valor buscado, le vamos a dar B4, le podríamos escribir el 1 literalmente y funcionaria igual, pero la idea de las fórmulas es reutilizarlas, por lo que vamos a seleccionar la celda.

cl9im5

En el segundo parámetro nos pregunta cual es el vector de comparación (entendiendo que un vector en este caso es la columna de los datos), seleccionamos el rango de A15:A20, si lo dejamos hasta ahí nos va a traer el 1, lo cual no es nada útil, entonces el tercer parámetro es que columna quiere que traiga en la imagen se ve que el rango es B15:B20 entonces veremos que nos ha traído el nombre de Pepito Perez

cl9im6

la opción de abajo funciona solo con 2 parámetros, el primero es lo mismo, pero el segundo pregunta en donde, pero si le decimos que la primera columna, nos trae el 1, que de nuevo no sirve y si seleccionamos toda la tabla nos va a traer el último dato, en este caso el email, por lo que no se va a tener en cuenta.

Con BuscarV

Llenamos los datos que faltaban y Pepito se fue, pero en la tarde regresa entonces tenemos otro registro de visita

cl9im7

Vamos a hacerlo con la función BuscarV

cl9im8

El primer parámetro funciona igual, es que dato voy a buscar, el segundo cambia un poco, por que aunque le indicamos donde debe buscar el solo va a buscar en la primera columna de la izquierda que le estamos indicando, es decir A15:A20. El tercero parámetro al igual que en buscar también es de donde va a traer los datos solo que le indicamos con un número que columna es la que queremos en este caso es la 2.

Luego nos pide un parámetro «ordenado» y la gente por lo general lo deja vació y ya, bueno esto es un problema, porque como esto no es una base de datos, se podrían presentar 2 casos, que no exista o que este repetido, repliquemos el cliente 1 con otros datos solo a modo de ejemplo

cl9im9

En la imagen podemos ver que nuestra primera fórmula ya tuvo un problema, trajo el último que encontró y el segundo no tiene problemas, ahora que pasa si vanos a traer uno que no existe

cl9im10

Nuestra primera fórmula vuelve a fallar ya que trajo a uno más cercano, que era el 1 y ahora estamos buscando un 2 que no existe, por lo que empezamos a ver las fallas de la fórmula Buscar, y BuscarV hasta ahora responde bien pero que pasa si ahora voy a buscar el de quien es el numero 9999999, suponiendo que hay una cantidad inmensa de clientes, BuscarV no nos serviría porque solo funciona buscando datos en la primera columna y no permite traer datos de la izquierda.

BuscarH

cl9im11

Este caso es diferente por lo que plantearemos otro tipo de tabla, en la imagen podemos visualizar el uso de buscarH, donde buscamos sobre la primera fila, encontró «Vendedor 2» y luego fue a la 4 fila que era la de marzo, pero este tipo de tablas casi no se usan y no son muy recomendables. Ademas tendría el mismo problema de BuscarV ya que no podría buscar hacia arriba.

FormulaTexto

Bueno esta función se explica sola en la imagen

cl9im12

Indice y Coincidir

Esta combinación es la recomendada del día y a mi entender es la más poderosa que hay, primero coincidir, su uso es bastante sencillo, Suponiendo que en la tabla clientes ya esta todo bien (las cédulas son únicas), en la imagen vemos el uso de la fórmula coincidir

cl9im13

Coincidimos el ID del cliente en el rango A15:A20 y de forma exacta, el 0 indica que el valor que estamos buscando sea si o si el 1 en este caso, también se puede buscar mayor que o menor que, depende de la necesidad. en este caso nos trajo un 1, es decir se encuentra en la 1 posición del rango que le dimos, en la celda de abajo vanos a usar el indice

cl9im14

A indice le estamos diciendo de está área (A15:F20) tráeme de la primera fila la 3 columna, bueno pero como los datos están escritos en literal no sirve para nada, ya sabemos que la 3 columna es la ciudad siempre, pero no siempre va a ser la primera fila, pongamos otro cliente y otra visita de ese cliente

cl9im15

Si revisamos la fórmula está la combinación de Indice y Coincidir de la que hablábamos, se leería algo así, siempre de adentro hacia afuera

COINCIDIR: Del dato de B6 (ID Cliente = 4) tráeme la posición donde la encuentres en el rango A15:A20

INDICE: de la matriz A15:F20 trae la celda con la fila de COINCIDIR y la columna 3 (ciudad)

ya sabemos que nos trajo Lisboa por que estaba en la posición 3-3 por así decirlo fila 3 columna 3, el 4 solo es la cédula del cliente y si es única no importa si esta ordenado o no, cosa que si nos pide BUSCARV por ejemplo.

Recomendaciones al copiar y pegar

La idea de las fórmulas es siempre poder reutilizarlas pero hay que tener en cuenta algunos detalles, por ejemplo si copiamos la ultima fórmula en la celda de la izquierda ¿que pasaría?

cl9im16

Todas las formulas se desplazaron 1 casilla a la izquierda, en el caso de los clientes como ya era la columna A y no hay nada antes pone #REF! que quiere decir que no esta apuntando a ningún lado por lo que el resultado de la fórmula será #REF! también.

cl9im17

Para editar la fórmula le damos F2 y ahora vamos a fijar los rangos, nos paramos sobre A15 y presionamos la tecla F4, nos damos cuenta que queda $A$15, ahora si copiamos la fórmula se mantendrá el A15 que tenemos escrito, se puede fijar solo la columna es decir $A15, pero si copiamos la formula hacia abajo y a la izquierda se va a desplazar hacia abajo y el rango no comenzará en 15 sino en 16, y también se puede A$15, y pasaría lo mismo pero en columnas, como nuestra tabla de clientes es siempre la misma debemos fijar tanto columnas como filas, como sabemos que en la parte de coincidir se movería a la izquierda si no lo fijamos, lo hacemos solo a nivel de columna, para que cuando la copiemos hacia abajo no se vaya al ID de la visita sino que se quede en el ID del cliente y que ademas no se quede en la fila 6 sino que se desplce a la 7, veamos como quedo en la siguiente imagen

cl9im18

algo ha quedado mal, si bien no nos trajo un error (porque ahora si tiene bien la tabla de clientes), nos esta trayendo a Lisboa y lo que queremos es el nombre del cliente, bueno eso es por que la fórmula aun dice que traigamos la columna 3, y en este caso es la 2, tendremos que modificarla a mano

cl9im19

en el final de la barra de fórmulas vemos que hemos cambiado la columna 2 en la de indice, por lo que ahora si funciona la fórmula, entonces la recomendación es Antes de copiar las fórmulas para toda una columna, verifica antes que funcione bien en la primera, después puedes copiarlas.

Ahora para finalizar una prueba, vino un cliente nuevo a la tienda

cl9im20

Se registra común y corriente la visita, ahora registramos el nuevo cliente

cl9im21

La idea es que no tengamos que organizar la tabla cada que se registra un cliente, ahora si copiamos las fórmulas de la visita 3 en la 4 debería funcionar

cl9im22

Efectivamente funciona de maravilla (al copiar debes buscar la opción pegar como fórmulas, arriba en la izquierda hay un botón que dice pegar y tiene una flecha hacia abajo, ahí esta la opción pegar como fórmula y así queda el formato intacto). Teniendo en cuenta que esta clase tuvo mucho contenido no realizaremos ejercicios el día de hoy y lo dejaremos para el día de mañana.


En la próxima clase veremos ejercicios de referencia y búsqueda


[pwt clase=9]


Publicado en: Curso Virtual

Acerca de Alejandro Ortiz Vivas

Ingeniero de sistemas, consultor tecnológico, analista de plan de negocio y toma de decisiones. Emprendiendo en software empresarial especializado en productividad y estrategia.

Freelance

  • Visita el Core Kentana
  • Trabaja Conmigo
  • Proyectos
    • Estados de proyectos para clientes
    • Proyecto Kentana
      • Core Firebird

Suscribete

  • Suscríbete al Blog
  • ivoox
  • Rss

Redes sociales

  • Facebook
  • Twitter
  • Linkedin
  • Podcast
  • Curso Virtual
  • Buscar

Copyright ©2026 · ortizvivas.com - Alejandro Ortiz Vivas