Cómo calcular la desviación estándar en Excel: Un tutorial paso a paso (2026)
Escrito por el equipo de Iron Software
La función de búsqueda vertical en Microsoft Excel es una de las herramientas más prácticas para trabajar con datos en hojas de cálculo de Excel. En esencia, realiza una búsqueda vertical: usted proporciona un valor de búsqueda, y Excel busca en la primera columna de un rango definido para encontrar una coincidencia, luego devuelve un valor correspondiente de otra columna en la misma fila. Ya sea que esté cruzando referencias de IDs de productos, extrayendo detalles de empleados o haciendo coincidir registros entre dos tablas, VLOOKUP puede reducir horas de trabajo manual a una sola fórmula.
Esta guía cubre todo lo que necesita para comenzar: entender la sintaxis de VLOOKUP, escribir su primera fórmula de VLOOKUP, elegir entre coincidencia exacta y aproximada, resolver errores comunes, y combinar VLOOKUP con la función de coincidencia para un uso más avanzado. También encontrará una tabla de referencia rápida y una sección para desarrolladores que muestra cómo recuperar datos de archivos de Excel programáticamente con IronXL.
Entendiendo la sintaxis de VLOOKUP
Antes de escribir una fórmula, es útil entender qué hace cada parte. La sintaxis de VLOOKUP sigue esta estructura:
=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
Escrito en su totalidad: lookup_value, table_array, col_index_num, y range_lookup son los cuatro argumentos que utiliza cada fórmula de VLOOKUP. Esto es lo que significa cada uno:
- lookup_value: El valor que desea buscar. Esto podría ser un nombre, ID de empleado, ID de producto u otro identificador.
- table_array: El rango de datos o el rango de la tabla que contiene sus datos. VLOOKUP siempre busca en la primera columna de este rango.
- col_index_num: El número de índice de la columna, que dice a Excel qué valor de columna devolver. Si la primera columna contiene el ID y la segunda columna contiene el nombre, al introducir 2 se devuelve el nombre. La tercera columna sería 3, y así sucesivamente.
- range_lookup: El último argumento, que controla el comportamiento de la coincidencia. Introduzca FALSE para coincidencia exacta o TRUE para coincidencia aproximada.
VLOOKUP requiere que la columna de búsqueda sea la primera columna en el array de la tabla, y solo puede recuperar datos de columnas a la derecha de esta columna. No puede mirar columnas a la izquierda de la clave de búsqueda.
La función de búsqueda vertical se utiliza para buscar información en una tabla especificada y devuelve el valor en la celda superpuesta basado en los índices de fila y columna proporcionados.

Método 1: Escribir una fórmula básica de VLOOKUP (Coincidencia Exacta)
La manera más común de usar VLOOKUP es con el modo de coincidencia exacta. Esta es la opción más segura cuando tiene una clave única como un ID de empleado o un ID de producto, y necesita un resultado preciso.
Paso 1: Organice sus datos para que la columna de búsqueda sea la primera columna en su array de tabla. VLOOKUP funciona con datos verticales y requiere una tabla organizada verticalmente, lo que significa que cada fila representa un registro.
Paso 2: Haga clic en la celda donde desea que aparezca el resultado.
Paso 3: Escriba la fórmula. Usando una tabla de empleados como ejemplo:
=VLOOKUP(G2,A2:D9,2,FALSE())
Aquí, G2 es el valor de búsqueda (el ID de empleado que está buscando), A2:D9 es el array de tabla (el rango de celdas que contiene todos sus datos), 2 es el col_index_num (devolviendo el nombre de la segunda columna), y FALSE especifica coincidencia exacta.
Paso 4: Presione Enter. La fórmula devuelve el valor exacto que coincide con su clave de búsqueda en la misma fila.
Para evitar regresar datos incorrectos, siempre use FALSE para coincidencias exactas en VLOOKUP. VLOOKUP por defecto está en modo de coincidencia aproximada si se omite el argumento range_lookup, lo que puede resultar en resultados inesperados e incorrectos si se necesita una coincidencia exacta.
En la mayoría de los casos, se recomienda usar VLOOKUP en modo de coincidencia exacta (FALSE) cuando tiene una clave única para asegurar resultados precisos.

Método 2: Recuperar datos de diferentes columnas
Una vez que entienda cómo funciona el número de índice de columna, puede recuperar datos de cualquier columna en el array de tabla cambiando ese único número.
Usando la misma tabla de empleados:
- =VLOOKUP(G2, A2:D9, 2, FALSE) devuelve el nombre (la segunda columna en el rango)
- =VLOOKUP(G2, A2:D9, 3, FALSE) devuelve el departamento (la tercera columna)
- =VLOOKUP(G2, A2:D9, 4, FALSE) devuelve el salario (la cuarta columna)
El número de la columna siempre se cuenta desde el borde izquierdo de su array de tabla, no desde la columna A de la hoja. Así que si su array de tabla empieza en la columna C, la primera columna contada es la columna C misma.
VLOOKUP solo puede recuperar datos de columnas a la derecha de la columna de búsqueda, lo que limita su flexibilidad en la recuperación de datos.

Método 3: Usar coincidencia aproximada para rangos
La coincidencia aproximada y exacta sirven para diferentes propósitos. El modo de coincidencia aproximada (range_lookup configurado en TRUE) está diseñado para situaciones donde está buscando un valor dentro de un rango, no un registro específico. Una tabla de tramos fiscales o un sistema de categorías de comisiones son ejemplos comunes.
Cuando range_lookup es TRUE, VLOOKUP realiza una coincidencia aproximada, lo que significa que empareja un rango de valores en lugar de un solo valor exacto. VLOOKUP tiene dos modos de coincidencia: coincidencia exacta y coincidencia aproximada, ambos controlados por el último argumento llamado range_lookup.
Importante: Para el modo de coincidencia aproximada, la tabla de datos debe estar ordenada en orden ascendente por la primera columna para evitar resultados incorrectos. Si la tabla proporcionada a VLOOKUP no está ordenada en orden ascendente, usar el modo de coincidencia aproximada puede llevar a resultados incorrectos. Para el modo de coincidencia aproximada, la tabla de datos debe estar ordenada en orden ascendente por la primera columna para evitar resultados incorrectos. VLOOKUP admite la coincidencia aproximada solo cuando se cumple este requisito de ordenación.
Fórmula de Ejemplo:
=VLOOKUP(B2, $E$2:$F$6, 2, TRUE)
Esto encontraría en cuál categoría el valor en B2 cae y devolvería la tasa de la segunda columna del rango.
Método 4: Usar VLOOKUP con Referencias Absolutas al Copiar Fórmulas
Cuando copia una fórmula VLOOKUP en otras celdas, la referencia del array de tabla se desplaza a menos que la bloquee. Al copiar una fórmula VLOOKUP, bloquee el rango de la tabla con signos de $ para crear una referencia absoluta. Esto asegura que el array de tabla no se desplace cuando la fórmula se copie. Esto mantiene fija toda la referencia de la tabla mientras que la celda del valor de búsqueda se ajusta automáticamente.
=VLOOKUP(A2, $C$2:$F$50, 2, FALSE)
Los signos de dólar antes de C2 y F50 crean referencias absolutas y aseguran que el array de tabla no se desplace a medida que la fórmula se copia hacia abajo.
Método 5: Combinando VLOOKUP con la función MATCH
La función MATCH puede ser anidada dentro de VLOOKUP para crear una búsqueda dinámica de columnas. En lugar de escribir un número de columna fijo, MATCH encuentra automáticamente la posición de un encabezado de columna.
Usar la función MATCH dentro de la fórmula de VLOOKUP permite tener un índice de columna dinámico, habilitando la recuperación de datos de una columna que puede cambiar de posición dentro de la tabla.
=VLOOKUP(H2,A2:E6,MATCH(H3,A1:E1,0),FALSE())
Aquí, MATCH(H3, A1:E1, 0) busca el nombre de la columna almacenado en H3 dentro de su fila de encabezado y devuelve su número de posición. VLOOKUP luego usa ese número como el col_index_num.
Cuando VLOOKUP se combina con MATCH, mejora la flexibilidad al permitir que el usuario especifique la columna a buscar basándose en una referencia dinámica en lugar de un número estático. La integración de MATCH con VLOOKUP ayuda a prevenir errores que ocurren cuando la estructura de los datos cambia, como la adición o eliminación de columnas.
El conjunto completo de argumentos lookup_value, table_array, col_index_num de VLOOKUP todavía se aplica aquí; solo el tercer argumento se vuelve dinámico.

Usando VLOOKUP con una tabla de Excel
Si sus datos están formateados como una tabla de Excel (Insertar > Tabla), VLOOKUP puede usar referencias estructuradas en lugar de direcciones de celdas simples. Las referencias estructuradas hacen que las fórmulas sean más fáciles de leer y se expanden automáticamente cuando se agregan nuevas filas a la tabla.
=VLOOKUP([@EmployeeID], EmployeeTable, 3, FALSE)
Las referencias estructuradas también reducen la necesidad de actualizar manualmente las referencias absolutas y funcionan bien en conjuntos de datos grandes donde el conteo de filas cambia regularmente. Las tablas dinámicas pueden complementar este enfoque resumiendo los datos resultantes del VLOOKUP una vez que han sido recuperados.
Problemas Comunes y Solución de Problemas
El Error #N/A
El error #N/A en VLOOKUP indica que el valor de búsqueda no se encontró en el array de tabla especificado, lo cual puede ocurrir por varias razones como datos incorrectos o problemas de formato.
Causas comunes:
- Espacios adicionales en el valor de búsqueda o la primera columna de sus datos fuente
- Valores de texto almacenados como números o números almacenados como texto (el resultado de la búsqueda fallará si los tipos no coinciden)
- El valor de búsqueda no existe en absoluto en el rango de datos
- Se intenta una coincidencia parcial en el modo de coincidencia exacta (VLOOKUP no admite coincidencias parciales por defecto)
Para manejar el error #N/A en VLOOKUP, puede usar la función IFNA para devolver un mensaje o valor personalizado cuando ocurre el error:
=IFNA(VLOOKUP(G2, A2:D9, 2, FALSE), "Not Found")
Usar la función IFERROR también puede atrapar errores de VLOOKUP #N/A, pero es importante notar que atrapa todo tipo de errores, no solo #N/A, lo que puede llevar a enmascarar otros problemas.
VLOOKUP devuelve el valor incorrecto
Si el resultado de VLOOKUP parece correcto pero en realidad es incorrecto, revise si el modo de coincidencia aproximada está activado accidentalmente. Un último argumento faltante o mal configurado por defecto es TRUE, lo que activa el modo de coincidencia aproximada. Configure el modo de coincidencia en FALSE para búsquedas precisas.
VLOOKUP solo devuelve la primera coincidencia encontrada en un conjunto de datos, lo que puede ser una limitación cuando múltiples entradas cumplen con los criterios de búsqueda. Si tiene valores individuales duplicados en la columna de búsqueda, VLOOKUP siempre se detendrá en la primera coincidencia e ignorará las demás, posiblemente devolviendo resultados inesperados.
La columna de búsqueda no es la primera columna
VLOOKUP funciona buscando solo la primera columna del array de tabla. Si la columna que necesita buscar no está en el lado izquierdo de su rango de datos, tiene dos opciones: agregue una columna auxiliar que coloque la clave a la izquierda, o cambie a la combinación de índice y coincidencia, que puede buscar en cualquier dirección.
La fórmula devuelve #REF!
Esto generalmente significa que el col_index_num es más grande que el número de columnas en su array de tabla. Verifique que el número de columna que especificó no exceda el ancho del rango de la tabla.
Sugerencia de captura de pantalla: Una captura de pantalla que muestra la fórmula IFNA en la barra de fórmulas y el texto amigable "No encontrado" apareciendo en la celda de resultado cuando se introduce un ID inexistente.
Referencia rápida: Modos y casos de uso de VLOOKUP
| Escenario | range_lookup | Ejemplo de fórmula | Notas |
|---|---|---|---|
| Buscar por ID de empleado (exacto) | FALSE | =VLOOKUP(A2,$C$2:$F$50,2,FALSE) | Recomendado para claves únicas |
| Buscar por ID de producto | FALSE | =VLOOKUP(B2,$E$2:$H$100,3,FALSE) | Coincidencia exacta, use $ para copiar con seguridad |
| Nivel de comisión (rango) | TRUE | =VLOOKUP(C2,$J$2:$K$6,2,TRUE) | La tabla debe estar ordenada en ascendente |
| Columna dinámica mediante índice match o MATCH | FALSE | =VLOOKUP(H2,A2:E6,MATCH(H3,A1:E1,0),FALSE) | Columna dirigida por un valor de celda |
| Envuelva con IFNA | FALSE | =IFNA(VLOOKUP(...),"No encontrado") | Maneja las entradas faltantes limpiamente |
Los argumentos lookup_value, table_array de VLOOKUP siempre son necesarios. El último argumento es técnicamente opcional, pero omitirlo puede producir resultados incorrectos en la práctica.
Limitaciones de VLOOKUP a tener en cuenta
VLOOKUP es una función confiable de Excel para la mayoría de las tareas cotidianas, pero tiene algunas limitaciones inherentes que vale la pena conocer antes de confiar en ella en modelos de producción:
- Solo puede buscar la primera columna del array de tabla, lo que significa que su búsqueda está limitada a una columna por búsqueda
- Solo devuelve la primera coincidencia, haciéndolo inadecuado cuando grandes conjuntos de datos contienen claves duplicadas
- El col_index_num es un número estático, lo que significa que insertar una nueva columna en su tabla puede desplazar el conteo y romper las devoluciones de fórmulas
- Los valores de texto y números deben coincidir en tipo, o la búsqueda fallará silenciosamente
Para mejor funcionalidad, considere usar XLOOKUP en lugar de VLOOKUP en versiones más nuevas de Excel. XLOOKUP es una nueva función disponible en Microsoft 365 y Excel 2021 que resuelve las limitaciones de columna izquierda y primera coincidencia. Dicho esto, VLOOKUP sigue siendo ampliamente compatible en todas las versiones de Excel y continúa funcionando correctamente para la gran mayoría de las búsquedas diarias.
Para desarrolladores: Leer y buscar datos de Excel con IronXL
Si es un desarrollador de .NET o C# y necesita replicar búsquedas al estilo VLOOKUP programáticamente, IronXL le ofrece una API limpia para leer hojas de cálculo de Excel, iterar filas y recuperar valores de celdas sin requerir Microsoft Office o Interop.
Instale IronXL a través de NuGet:
Paquete de instalación IronXL.Excel
El ejemplo a continuación carga un libro de trabajo, lee una tabla de pares de ID de empleados y nombres de una tabla de Excel, y realiza una búsqueda equivalente a =VLOOKUP(lookupId, A2:D9, 2, FALSE):
using IronXL;
// Load the workbook
WorkBook workBook = WorkBook.Load("vlookup_demo.xlsx");
WorkSheet sheet = workBook.WorkSheets[0];
// Define the data range (equivalent to table_array in VLOOKUP)
string lookupId = "E004";
string lookupColumn = "A"; // first column (Employee ID)
string returnColumn = "B"; // second column (Name)
int dataStartRow = 2;
int dataEndRow = 9;
string result = "Not Found";
for (int row = dataStartRow; row <= dataEndRow; row++)
{
// Read the cell value from the lookup column
string cellValue = sheet[$"{lookupColumn}{row}"].StringValue;
if (cellValue == lookupId)
{
// Return the corresponding value from the return column
result = sheet[$"{returnColumn}{row}"].StringValue;
break; // Return the first match, same as VLOOKUP
}
}
Console.WriteLine($"Employee Name: {result}");
// Output: Employee Name: David Lee
using IronXL;
// Load the workbook
WorkBook workBook = WorkBook.Load("vlookup_demo.xlsx");
WorkSheet sheet = workBook.WorkSheets[0];
// Define the data range (equivalent to table_array in VLOOKUP)
string lookupId = "E004";
string lookupColumn = "A"; // first column (Employee ID)
string returnColumn = "B"; // second column (Name)
int dataStartRow = 2;
int dataEndRow = 9;
string result = "Not Found";
for (int row = dataStartRow; row <= dataEndRow; row++)
{
// Read the cell value from the lookup column
string cellValue = sheet[$"{lookupColumn}{row}"].StringValue;
if (cellValue == lookupId)
{
// Return the corresponding value from the return column
result = sheet[$"{returnColumn}{row}"].StringValue;
break; // Return the first match, same as VLOOKUP
}
}
Console.WriteLine($"Employee Name: {result}");
// Output: Employee Name: David Lee
Imports IronXL
' Load the workbook
Dim workBook As WorkBook = WorkBook.Load("vlookup_demo.xlsx")
Dim sheet As WorkSheet = workBook.WorkSheets(0)
' Define the data range (equivalent to table_array in VLOOKUP)
Dim lookupId As String = "E004"
Dim lookupColumn As String = "A" ' first column (Employee ID)
Dim returnColumn As String = "B" ' second column (Name)
Dim dataStartRow As Integer = 2
Dim dataEndRow As Integer = 9
Dim result As String = "Not Found"
For row As Integer = dataStartRow To dataEndRow
' Read the cell value from the lookup column
Dim cellValue As String = sheet($"{lookupColumn}{row}").StringValue
If cellValue = lookupId Then
' Return the corresponding value from the return column
result = sheet($"{returnColumn}{row}").StringValue
Exit For ' Return the first match, same as VLOOKUP
End If
Next
Console.WriteLine($"Employee Name: {result}")
' Output: Employee Name: David Lee
Este enfoque refleja cómo funciona VLOOKUP en Excel: itera la primera columna del rango de datos y devuelve el valor correspondiente de la columna especificada en la misma fila. Para conjuntos de datos grandes, puede extender esto a una búsqueda basada en diccionario para un rendimiento más rápido.
IronXL también admite la lectura de la columna e y cualquier otra columna usando notación de dirección de celdas, iterando a través de referencias estructuradas en tablas con nombre, y exportando resultados de nuevo a XLSX sin ninguna dependencia de Office.
Comience con una prueba gratuita para probar IronXL en su propio proyecto. La documentación completa está disponible en ironsoftware.com/csharp/excel/.
Lectura Adicional:
Resumen
Saber cómo usar VLOOKUP en Excel abre una amplia gama de flujos de trabajo prácticos: obtener nombres de una lista de ID, hacer coincidir precios con ID de productos, recuperar datos de departamento de un directorio de empleados, y mucho más. Para búsquedas diarias con una clave única, la coincidencia exacta (FALSE) es casi siempre el punto de partida correcto. Cuando necesita un resultado basado en rangos, la coincidencia aproximada (TRUE) funciona bien siempre que los datos estén ordenados en orden ascendente. Para más flexibilidad, la combinación de índice y coincidencia o anidar la función de coincidencia dentro de VLOOKUP en Excel elimina la restricción de columna izquierda por completo.
Si está construyendo aplicaciones .NET que trabajan con datos de Excel a gran escala, IronXL hace posible leer, buscar, y recuperar datos de hojas de cálculo de Excel sin una sola línea de código de Office Interop. Obtenga una prueba gratuita y vea qué tan rápido puede agregar inteligencia de hojas de cálculo a su aplicación.




