=INDICE(A2:C6;3;2) devuelve el valor de la tercera fila y la segunda columna del rango A2:C6. Las posiciones se cuentan desde la celda superior izquierda del rango, así que la fila 3 de A2:C6 es la fila 4 de la hoja. Cambia el 3 o el 2 y mira cómo se mueve el resultado. La función INDICE se llama INDEX en inglés, y la tabla muestra la fórmula en inglés; también acepta las fórmulas escritas en español, con punto y coma (o con comas, como en México).
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Product | Category | Price | Row | Column | Result | |
| 2 | Apple | Fruit | $1.20 | 3 | 2 | Vegetable | |
| 3 | Pear | Fruit | $1.50 | ||||
| 4 | Carrot | Vegetable | $0.80 | ||||
| 5 | Bread | Bakery | $2.40 | ||||
| 6 | Milk | Dairy | $1.10 |
=INDICE(A2:C6;E2;F2)E2 contiene el número de fila y F2 el de columna. La fila 3 es Carrot y la columna 2 es Category, así que G2 muestra Vegetable. Pon F2 en 1 para ver el nombre del producto, o E2 en 6 para ver #REF! (#¡REF! en Excel en español; la tabla muestra los nombres de error en inglés): A2:C6 solo tiene cinco filas.
Sintaxis de INDICE
=INDEX(array, row_num, [column_num])
array(matriz): el rango (o matriz) del que se lee.row_num: qué fila, empezando en 1. Usa 0 para todas las filas.column_num: qué columna, empezando en 1. Es opcional cuando el rango es una sola columna o una sola fila; usa 0 para todas las columnas.
En una sola columna basta un número: =INDICE(A2:A6;4) es el cuarto elemento, Bread. Una segunda forma, =INDICE((A2:C3;A5:C6);1;1;2), elige de uno entre varios rangos; casi nunca hace falta.
Obtener el elemento n, o el último
INDICE con una sola columna responde a "cuál es el elemento número n". Combinada con CONTARA (COUNTA en inglés), que cuenta las celdas llenas, devuelve el último elemento de una lista que crece.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Product | Item number | 2 | |
| 2 | Apple | Nth item | Pear | |
| 3 | Pear | Last item | Milk | |
| 4 | Carrot | |||
| 5 | Bread | |||
| 6 | Milk |
=INDICE(A2:A6;CONTARA(A2:A6))D1 dice 2, así que D2 devuelve Pear. CONTARA cuenta 5 productos, así que D3 devuelve el quinto, Milk. Borra Milk y D3 devuelve Bread. En un archivo real, apunta las dos a un rango más largo como A2:A1000 para que se incluyan las filas nuevas; CONTARA solo funciona así cuando la columna no tiene celdas vacías en medio.
Devolver una fila o columna entera con 0
Un 0 como número de fila significa "todas las filas", así que INDICE(B2:D5;0;2) es toda la segunda columna. Dentro de SUMA, PROMEDIO o MAX, eso suma una columna elegida por número.
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Region | Jan | Feb | Mar | Month number | Total | |
| 2 | North | 4,200 | 3,900 | 4,800 | 2 | 15,200 | |
| 3 | South | 3,100 | 3,600 | 3,300 | |||
| 4 | East | 5,200 | 4,700 | 5,600 | |||
| 5 | West | 2,800 | 3,000 | 3,400 |
=SUMA(INDICE(B2:D5;0;F2))El mes 2 es Feb, y G2 suma C2:C5: 15,200. Cambia F2 a 3 para marzo. Una fila entera funciona igual: =SUMA(INDICE(B2:D5;3;0)) suma East. En Excel 2021 y Microsoft 365, =INDICE(B2:D5;0;2) sola desborda los cuatro valores hacia abajo en la hoja. Para elegir la columna por su encabezado en lugar de por un número, sustituye F2 por un COINCIDIR, que es el patrón de INDICE y COINCIDIR.
INDICE sobre una matriz o un resultado desbordado
INDICE también lee las matrices que devuelve una fórmula, no solo rangos de la hoja. Así se toma un elemento de una lista ordenada, filtrada o de valores únicos sin escribir antes la lista.
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Product | Category | Price | Most expensive | Bread | |
| 2 | Apple | Fruit | $1.20 | Second | Pear | |
| 3 | Pear | Fruit | $1.50 | Cheapest | Carrot | |
| 4 | Carrot | Vegetable | $0.80 | |||
| 5 | Bread | Bakery | $2.40 | |||
| 6 | Milk | Dairy | $1.10 |
ORDENARPOR (SORTBY en inglés) devuelve los cinco productos ordenados por precio, e INDICE toma el elemento 1 (Bread), el 2 (Pear) o, de la ordenación ascendente, el 1 (Carrot). En Excel en español la fórmula de F2 es =INDICE(ORDENARPOR(A2:A6;C2:C6;-1);1). Cambia el precio de Milk a 3 y pasa a ser el más caro. Si una lista desbordada ya está en la hoja, por ejemplo en H2, Excel 2021 y Microsoft 365 te dejan escribir =INDICE(H2#;2) para su segundo elemento.
Práctica: total de un mes elegido
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Region | Jan | Feb | Mar | Month number | Total | |
| 2 | North | 4,200 | 3,900 | 4,800 | 1 | ||
| 3 | South | 3,100 | 3,600 | 3,300 | |||
| 4 | East | 5,200 | 4,700 | 5,600 | |||
| 5 | West | 2,800 | 3,000 | 3,400 |
Tu turno: En G2, devuelve el total del mes cuyo número está en F2 (1 = Jan, 2 = Feb, 3 = Mar), usando INDICE.
Preguntas frecuentes
¿Qué hace la función INDICE en Excel?
Devuelve el valor de una posición dada en un rango: =INDICE(A2:C6;3;2) devuelve el valor de la tercera fila y la segunda columna de A2:C6. Las posiciones se cuentan desde la celda superior izquierda del rango, no desde la fila 1 de la hoja.
¿Cómo obtengo el último valor de una columna con INDICE?
Usa el número de celdas llenas como número de fila: =INDICE(B2:B100;CONTARA(B2:B100)) devuelve el último valor de una columna sin huecos. Con huecos, =LOOKUP(2,1/(B2:B100<>""),B2:B100) devuelve el último valor no vacío.
¿Por qué INDICE devuelve #¡REF!?
El número de fila o de columna es mayor que el rango. =INDICE(A2:A6;7) pide el séptimo elemento de un rango de cinco celdas y devuelve #¡REF! (#REF! en inglés).
¿Cómo devuelvo una columna entera con INDICE?
Usa 0 como número de fila: =INDICE(B2:D5;0;2) devuelve toda la segunda columna. Envuélvela en una función para sumarla, como en =SUMA(INDICE(B2:D5;0;2)), o deja que se desborde en Excel 2021 y Microsoft 365.