Directrices y ejemplos de fórmulas de matriz

Para convertirse en un usuario avanzado de Excel, tiene que saber utilizar fórmulas de matriz, que pueden realizar cálculos vetados a otros tipos de fórmulas. El siguiente artículo se basa en una serie de columnas para usuarios avanzados de Excel escritas por Colin Wilcox y adaptadas de los capítulos 14 y 15 de Fórmulas de Excel 2002, un libro escrito por John Walkenbach, un MVP (profesional más valorado) de Excel. Para obtener más información acerca de otros libros de John, vea su página.

En este artículo


Obtener información acerca de las fórmulas de matriz

En esta sección se ofrece información general acerca de las fórmulas de matriz y se explica cómo escribirlas, modificarlas y solucionar los problemas que puedan plantear.

¿Por qué utilizar fórmulas de matriz?

Si tiene experiencia en el uso de fórmulas de Excel, sabrá que es posible realizar algunas operaciones bastante complejas. Por ejemplo, es posible calcular el costo total de un préstamo a lo largo de un número concreto de años. Sin embargo, si realmente desea dominar las fórmulas de Excel, tiene que aprender a utilizar fórmulas de matriz. Éstas se pueden emplear para realizar tareas complejas como:

  • Contar el número de caracteres incluidos en un rango de celdas.
  • Sumar únicamente aquellos números que cumplan ciertas condiciones, como los valores más bajos de un rango o los números comprendidos entre un límite superior e inferior.
  • Sumar cada º valor de un rango de valores.

 Nota   Es posible que descubra que a las fórmulas de matriz también se las conoce como "fórmulas CSE". Esto se debe a que para especificarlas en los libros se presiona CTRL+MAYÚS+ENTRAR.

Introducción rápida a las matrices y las fórmulas de matriz

Si ha hecho un poco de programación, es probable que se haya encontrado con el término matriz. A efectos de este artículo, una matriz es una colección de elementos. En Excel, esos elementos pueden residir en una única fila (lo que se denomina una matriz horizontal unidimensional), una columna (una matriz vertical unidimensional) o varias filas y columnas (una matriz bidimensional). En Excel no es posible crear matrices ni fórmulas de matriz tridimensionales.

Una fórmula de matriz es una fórmula que puede realizar varios cálculos en uno o varios de los elementos de una matriz. Las fórmulas de matriz pueden devolver varios resultados o un único resultado. Por ejemplo, se puede colocar una fórmula de matriz en un rango de celdas y utilizarla para calcular una columna o fila de subtotales. También se puede colocar en una sola celda y calcular una cantidad única. Una fórmula de matriz que reside en varias celdas se denomina fórmula de varias celdas, mientras una que reside en una sola celda se denomina fórmula de una celda.

En los ejemplos de la siguiente sección se muestra cómo crear fórmulas de matriz de varias celdas y de una celda.

¡Pruébelo!

En este ejercicio se muestra cómo utilizar fórmulas de matriz de varias celdas y una celda para calcular un conjunto de cifras de ventas. En el primer conjunto de pasos se emplea una fórmula de varias celdas para calcular un conjunto de subtotales. En el segundo se usa una fórmula de una celda para calcular un total general.

Crear una fórmula de matriz de varias celdas

  1. Abra un nuevo libro en blanco.
  2. Copie los datos de la hoja de cálculo de ejemplo y, a continuación, péguelos en el nuevo libro a partir de la celda A1.

MostrarCómo copiar los datos de la hoja de cálculo de ejemplo

  • Cree una hoja de cálculo o un libro en blanco.
  • Seleccione el ejemplo en el tema de Ayuda.

 Nota   No seleccione los encabezados de columna o de fila.

Seleccionar un ejemplo de la Ayuda

Seleccionar un ejemplo de la Ayuda
  • Presione CTRL+C.
  • En la hoja de cálculo, seleccione la celda A1 y presione CTRL+V.

Vendedor Tipo de vehículo Número vendido Precio unitario Ventas totales
Barnhill Sedán 5 2200  
  Cupé 4 1800  
Ingle Sedán 6 2300  
  Cupé 8 1700  
Jordan Sedán 3 2000  
  Cupé 1 1600  
Pica Sedán 9 2150  
  Cupé 5 1950  
Sánchez Sedán 6 2250  
  Cupé 8 2000  

  1. Use el botón Opciones de pegadoImagen del botón que aparece para mantener el formato de destino.
  2. Para multiplicar los valores de la matriz (el rango de celdas comprendido entre C2 y D11), seleccione las celdas desde E2 a E11 y, a continuación, escriba la siguiente fórmula en la barra de fórmulas:

=C2:C11*D2:D11

  1. Presione CTRL+MAYÚS+ENTRAR.

Excel incluye la fórmula entre llaves ({ }) y coloca una instancia de la misma en cada celda del rango seleccionado. Eso sucede con mucha rapidez, así que lo que verá en la columna E es la cifra de ventas total de cada tipo de vehículo por vendedor.


Datos de ejemplo


Crear una fórmula de matriz de una celda

  1. En la celda A13 del libro, escriba Ventas totales.
  2. En la celda B13, escriba la siguiente fórmula y, a continuación, presione CTRL+MAYÚS+ENTRAR:

=SUMA(C2:C11*D2:D11)

En este caso, Excel multiplica los valores de la matriz (el rango de celdas entre C2 y D11) y utiliza la función SUMA para agregar los totales. El resultado es un total general de 111.800 $ en ventas. Este ejemplo demuestra lo eficaz que puede resultar este tipo de fórmula. Por ejemplo, imagine que tiene 15.000 filas de datos. Puede sumar parte de los datos o la totalidad si crea una fórmula de matriz en una sola celda.

Además, observe que la fórmula de una celda (en la celda B13) es totalmente independiente de la fórmula de varias celdas (la fórmula de las celdas entre E2 y E11). Eso pone de manifiesto otra ventaja de las fórmulas de matriz: la flexibilidad. Es posible realizar innumerables acciones, por ejemplo modificar las fórmulas de la columna E o eliminar por completo esa columna, sin que ello afecte a la fórmula de una celda.

Las fórmulas de matriz también ofrecen estas ventajas:

  • Coherencia    Si hace clic en cualquiera de las celdas desde E2 hacia abajo, verá la misma fórmula. Esa coherencia garantiza una mayor precisión.
  • Seguridad    No es posible sobrescribir un componente de una fórmula de matriz de varias celdas. Por ejemplo, haga clic en la celda E3 y presione SUPR. Tendrá que seleccionar todo el rango de celdas (de E2 a E11) y modificar la fórmula de la matriz completa o dejar la matriz como está. Como medida de seguridad adicional, tiene que presionar CTRL+MAYÚS+ENTRAR para confirmar la modificación de la fórmula.
  • Tamaños de archivo menores    Con frecuencia podrá utilizar una fórmula de matriz sencilla en lugar de varias fórmulas intermedias. Por ejemplo, el libro que ha creado para este ejercicio emplea una fórmula de matriz para calcular los resultados de la columna E. Si hubiera utilizado fórmulas estándar (como =C2*D2), habría usado 11 fórmulas distintas para calcular los mismos resultados.

Un vistazo a la sintaxis de las fórmulas de matriz

En su mayor parte, las fórmulas de matriz usan sintaxis de fórmula estándar. También comienzan con un signo igual y se puede utilizar cualquiera de las funciones incorporadas de Excel. La principal diferencia es que al utilizar una fórmula de matriz es necesario presionar CTRL+MAYÚS+ENTRAR para especificarla. Al hacer esto, Excel incluye la fórmula de matriz entre llaves; si escribe las llaves manualmente, la fórmula se convertirá en una cadena de texto y no funcionará.

Lo siguiente que tiene que entender es que las funciones de matriz son una forma de método abreviado. Por ejemplo, la función de varias celdas que ha utilizado anteriormente es el equivalente a:

=C2*D2
=C3*D3,

etc. La fórmula de una celda de la celda B13 condensa todas esas operaciones de multiplicación, más la aritmética necesaria para agregar esos subtotales: =E2+E3+E4, etc.

Reglas para especificar y modificar fórmulas de matriz

La regla principal para crear una fórmula de matriz merece repetirse: presione CTRL+MAYÚS+ENTRAR siempre que sea necesario para especificar o modificar una fórmula de matriz. Esa regla se aplica tanto a las fórmulas de una celda como de varias.

Siempre que trabaje con fórmulas de varias celdas, también tendrá que seguir estas reglas:

  • Tiene que seleccionar el rango de celdas en el que va a incluir los resultados antes de especificar la fórmula. Lo hizo en el paso 3 del ejercicio de la fórmula de matriz de varias celdas al seleccionar las celdas comprendidas entre E2 y E11.
  • No puede modificar el contenido de una celda individual de una fórmula de matriz. Para intentarlo, seleccione la celda E3 del libro de ejemplo y presione SUPR.
  • Puede mover o eliminar una fórmula de matriz completa, pero no parte de la misma. En otras palabras, para reducir una fórmula de matriz, primero debe eliminar la fórmula existente y comenzar de nuevo.

 Sugerencia   Para eliminar una fórmula de matriz, seleccione la fórmula completa (por ejemplo, =C2:C11*D2:D11), presione SUPR y, a continuación, CTRL+MAYÚS+ENTRAR.

  • No puede insertar celdas en blanco en una fórmula de matriz de varias celdas ni eliminar celdas de la misma.

Ampliar una fórmula de matriz

A veces es posible que necesite ampliar una fórmula de matriz. (Recuerde que no es posible reducirla). El proceso no es complicado, aunque debe recordar las reglas de la sección anterior.

  1. En el libro de ejemplo, borre todo el texto y las fórmulas de una celda situadas debajo de la tabla principal.
  2. Pegue estas líneas de datos adicionales en el libro a partir de la celda A12. Use el botón Opciones de pegadoImagen del botón que aparece para mantener el formato de destino.

Toth Sedán 6 2500
  Cupé 7 1900
Solsona Sedán 4 2200
  Cupé 3 2000
Noriega Sedán 8 2300
  Cupé 8 2100

  1. Seleccione el rango de celdas que contiene la fórmula de matriz actual (E2:E11) más las celdas vacías (E12:E17) situadas junto a los nuevos datos. En otras palabras, seleccione las celdas E2:E17.
  2. Presione F2 para ir al modo de edición.
  3. En la barra de fórmulas, cambie C11 por C17, D11 por D17 y, a continuación, presione CTRL+MAYÚS+ENTRAR. Excel actualiza la fórmula de las celdas E2 a E11 y coloca una instancia de la misma en las nuevas celdas, E12 a E17.

Datos de ejemplo


Desventajas de utilizar fórmulas de matriz

Las fórmulas de matriz pueden parecer mágicas, pero también tienen algunas desventajas:

  • A veces uno puede olvidarse de presionar CTRL+MAYÚS+ENTRAR. Acuérdese de presionar esta combinación de teclas siempre que especifique o modifique una fórmula de matriz.
  • Es posible que otros usuarios no entiendan sus fórmulas. Existe relativamente poca documentación sobre las fórmulas de matriz, así que si otros usuarios tienen que modificar sus libros, debería evitarlas o asegurarse de que esos usuarios entiendan cómo modificarlas.
  • Según la velocidad de procesamiento y la memoria del equipo, las fórmulas de matriz de gran tamaño pueden ralentizar los cálculos.

Volver al principio Volver al principio

Obtener información acerca de las constantes de matriz

En esta sección se ofrece información general acerca de las constantes de matriz y se explica cómo escribirlas, modificarlas y solucionar los problemas que puedan plantear.

Breve introducción a las constantes de matriz

Las constantes de matriz son un componente de las fórmulas de matriz. Es posible crear constantes de matriz si se especifica una lista de elementos y, a continuación, se incluye entre llaves ({ }), como:

={1,2,3,4,5}

En las secciones anteriores de este artículo se ha recalcado la necesidad de presionar CTRL+MAYÚS+ENTRAR al crear fórmulas de matriz. Dado que las constantes son un componente de éstas, se incluyen entre llaves de forma manual al escribir dichas llaves. A continuación se utiliza CTRL+MAYÚS+ENTRAR para especificar la fórmula completa.

Si se delimitan (separan) los elementos mediante comas, se crea una matriz horizontal (una fila). Si se delimitan mediante caracteres de punto y coma, se crea una matriz vertical (una columna). Para crear una matriz bidimensional, se delimitan los elementos de cada fila mediante comas y cada fila se delimita mediante caracteres de punto y coma.

Al igual que ocurre con las fórmulas de matriz, las constantes se pueden utilizar con cualquiera de las funciones incorporadas que proporciona Excel. En las siguientes secciones se explica cómo crear cada tipo de constante y cómo utilizarlas con las funciones de Excel.

Crear constantes unidimensionales y bidimensionales

El procedimiento siguiente le permitirá practicar la creación de constantes horizontales, verticales y bidimensionales.

Crear una constante horizontal

  1. Utilice el libro de la columna anterior o inicie uno nuevo.
  2. Seleccione desde la celda A1 hasta E1.
  3. En la barra de fórmulas, escriba la siguiente fórmula y presione CTRL+MAYÚS+ENTRAR:

={1,2,3,4,5}

 Nota   En este caso tendrá que escribir las llaves de apertura y cierre ({ }).

Verá el resultado siguiente.


Constante de matriz horizontal en una fórmula


Es posible que se pregunte por qué no puede escribir los números de forma manual. Siga adelante, ya que en la sección Usar constantes en fórmulas se muestran las ventajas del uso de las constantes de matriz.

Crear una constante vertical

  1. En el libro, seleccione una columna de cinco celdas.
  2. En la barra de fórmulas, escriba la siguiente fórmula y presione CTRL+MAYÚS+ENTRAR:

={1;2;3;4;5}

Verá el resultado siguiente.


Constante de matriz vertical en una fórmula de matriz


Crear una constante bidimensional

  1. En el libro, seleccione un bloque de celdas de cuatro columnas de ancho por tres filas de alto.
  2. En la barra de fórmulas, escriba la siguiente fórmula y presione CTRL+MAYÚS+ENTRAR:

={1,2,3,4;5,6,7,8;9,10,11,12}

Verá el resultado siguiente:


Constante de matriz bidimensional en una fórmula de matriz


Usar constantes en fórmulas

Ahora que ya se ha familiarizado con la especificación de constantes de matriz, vea este sencillo ejemplo en el que se emplea todo lo explicado:

  1. Abra una hoja de cálculo en blanco.
  2. Copie la siguiente tabla a partir de la celda A1. Use el botón Opciones de pegadoBotón Opciones de pegado que aparece para mantener el formato de destino.

3 4 5 6 7

  1. En la celda A3, escriba la siguiente fórmula y presione CTRL+MAYÚS+ENTRAR:

=SUMA(A1:E1*{1,2,3,4,5})

Observe que Excel incluye la constante entre otro par de llaves, dado que la ha especificado como una fórmula de matriz.


Fórmula de matriz con constante de matriz


En la celda A3 aparece el valor 85. En la siguiente sección se explica el funcionamiento de la fórmula.

Un vistazo a la sintaxis de las constantes de matriz

La fórmula que acaba de utilizar contiene varias partes.


Sintaxis de fórmula de matriz con constante de matriz

Llamada 1 Función
Llamada 2 Matriz almacenada
Llamada 3 Operador
Llamada 4 Constante de matriz

El último elemento incluido en los paréntesis es la constante de matriz: {1,2,3,4,5}. Recuerde que Excel no incluye las constantes de matriz entre llaves; es usted quien debe hacerlo. Recuerde también que después de agregar una constante a una fórmula de matriz, se presiona CTRL+MAYÚS+ENTRAR para especificar la fórmula.

Dado que Excel realiza en primer lugar las operaciones de las expresiones incluidas entre paréntesis, los dos siguientes elementos que entran en acción son los valores almacenados en el libro (A1:E1) y el operador. En este punto, la fórmula multiplica los valores de la matriz almacenada por los valores correspondientes de la constante. Es el equivalente de:

=SUMA(A1*1,B1*2,C1*3,D1*4,E1*5)

Por último, la función SUMA agrega los valores y en la celda A3 aparece la suma 85:

Para evitar el uso de la matriz almacenada y simplemente conservar la operación en su totalidad en memoria, sustituya la matriz almacenada por otra constante de matriz:

=SUMA({3,4,5,6,7}*{1,2,3,4,5})

Para intentarlo, copie la función, seleccione una celda en blanco del libro, pegue la fórmula en la barra de fórmulas y, a continuación, presione CTRL+MAYÚS+ENTRAR. Verá el mismo resultado que en el ejercicio anterior, cuando empleó la fórmula de matriz =SUMA(A1:E1*{1,2,3,4,5}).

Elementos que se pueden utilizar en las constantes

Las constantes de matriz pueden contener números, texto, valores lógicos (como TRUE y FALSE) y valores de error (como #N/A). Puede utilizar los números en formato entero, decimal y científico. Si incluye texto, debe especificarlo entre comillas tipográficas (").

Las constantes de matriz no pueden contener matrices, fórmulas ni funciones adicionales. En otras palabras, sólo pueden incluir texto o números separados por comas o puntos y coma. Cuando se especifica una fórmula como {1,2,A1:D4} o {1,2,SUMA(Q2:Z8)}, Excel muestra un mensaje de advertencia. Además, los valores numéricos pueden incluir signos de porcentaje, de dólar, comas o paréntesis.

Poner nombre a las constantes de matriz

Posiblemente la mejor forma para utilizar las constantes de matriz sea ponerles nombre. Las constantes con nombre pueden resultar mucho más sencillas de utilizar y pueden ocultar parte de la complejidad de las fórmulas de matriz a los principiantes. Para ponerle nombre a una constante de matriz y utilizarla en una fórmula, siga este procedimiento:

  1. En el grupo Nombres definidos de la ficha Fórmulas, haga clic en Definir nombre.

Se abre el cuadro de diálogo Definir nombre.

  1. En el cuadro Nombre, escriba Trimestre1.
  2. En el cuadro Se refiere a, escriba la siguiente constante (acuérdese de escribir las llaves de forma manual):

={"Enero","Febrero","Marzo"}

El contenido del cuadro de diálogo debería tener este aspecto:

Cuadro de diálogo Editar nombre con fórmula

  1. Haga clic en Aceptar.
  2. En la hoja de cálculo, seleccione una fila de tres celdas en blanco.
  3. Escriba la fórmula siguiente y, a continuación, presione CTRL+MAYÚS+ENTRAR.

=Trimestre1

Verá el resultado siguiente.


Matriz con nombre especificada como una fórmula


Cuando emplee una constante con nombre como fórmula de matriz, acuérdese de escribir el signo igual. Si no lo hace, Excel interpretará la matriz como una cadena de texto. Por último, tenga en cuenta que puede utilizar combinaciones de texto y números.

Solucionar problemas de las constantes de matriz

Si sus constantes de matriz no funcionan, vea los siguientes problemas:

  • Es posible que algunos elementos no se hayan separado con el carácter adecuado. Si omite una coma o un punto y coma o coloca uno en la ubicación incorrecta, es posible que la constante de matriz no se cree correctamente o que aparezca un mensaje de advertencia.
  • Es posible que haya seleccionado un rango de celdas que no coincida con el número de elementos de la constante. Por ejemplo, si selecciona una columna de seis celdas para utilizarla con una constante de cinco celdas, aparecerá el valor de error #N/A en la celda vacía. Por el contrario, si selecciona muy pocas celdas, Excel omite los valores que no cuentan con una celda correspondiente.

Constantes de matriz en acción

En los ejemplos siguientes se muestran algunas formas de utilizar constantes de matriz en fórmulas de matriz. En algunos de los ejemplos se emplea la función TRANSPONER para convertir filas en columnas y viceversa.

Multiplicar cada elemento de una matriz

  1. Seleccione un bloque de celdas vacías de cuatro columnas de ancho por tres filas de alto.
  2. Escriba la fórmula siguiente y, a continuación, presione CTRL+MAYÚS+ENTRAR.

={1,2,3,4;5,6,7,8;9,10,11,12}*2

Elevar al cuadrado los elementos de una matriz

  • Seleccione un bloque de celdas vacías de cuatro columnas de ancho por tres filas de alto.
  • Escriba la fórmula de matriz siguiente y, a continuación, presione CTRL+MAYÚS+ENTRAR.

={1,2,3,4;5,6,7,8;9,10,11,12}*{1,2,3,4;5,6,7,8;9,10,11,12}

También puede escribir esta fórmula de matriz, en la que se utiliza el operador de intercalación (^):

={1,2,3,4;5,6,7,8;9,10,11,12}^2

Transponer una fila unidimensional

  1. Seleccione una columna de cinco celdas en blanco.
  2. Escriba la fórmula siguiente y, a continuación, presione CTRL+MAYÚS+ENTRAR:

=TRANSPONER({1,2,3,4,5})

Aunque haya escrito una constante de matriz horizontal, la función TRANSPONER la convierte en una columna.

Transponer una columna unidimensional

  1. Seleccione una fila de cinco celdas en blanco.
  2. Escriba la fórmula siguiente y, a continuación, presione CTRL+MAYÚS+ENTRAR:

=TRANSPONER({1;2;3;4;5})

Aunque haya escrito una constante de matriz vertical, la función TRANSPONER la convierte en una fila.

Transponer una constante bidimensional

  1. Seleccione un bloque de celdas de tres columnas de ancho por cuatro filas de alto.
  2. Escriba la constante siguiente y presione CTRL+MAYÚS+ENTRAR.

=TRANSPONER({1,2,3,4;5,6,7,8;9,10,11,12})

La función TRANSPONER convierte cada fila en una serie de columnas.

Volver al principio Volver al principio

Trabajar con fórmulas de matriz básicas

En esta sección se proporcionan ejemplos de fórmulas de matriz básicas.

Introducción

Utilice los datos de esta sección para crear dos hojas de cálculo de ejemplo.

  1. Abra un libro existente o cree uno nuevo y asegúrese de que contiene dos hojas de cálculo en blanco.
  2. Copie los datos de la tabla siguiente y péguelos en la hoja de cálculo a partir de la celda A1.
400   el rápido   1 2 3 4
1200   zorro marrón   5 6 7 8
3200   saltó sobre   9 10 11 12
475   el perezoso   13 14 15 16
500   usuario avanzado          
2000              
600              
1700              
800              
2700              
  1. Su hoja de cálculo terminada debería tener este aspecto.

  2. Datos de ejemplo completos

  3. Póngale el nombre Datos a la primera hoja de cálculo y a la segunda hoja de cálculo en blanco Matrices.

Crear matrices y constantes de matriz a partir de valores existentes

En el siguiente ejemplo se explica cómo utilizar fórmulas de matriz para crear vínculos entre rangos de celdas de distintas hojas de cálculo. También se muestra cómo crear una constante de matriz a partir del mismo conjunto de valores.

Crear una matriz a partir de valores existentes

  1. En el libro de ejemplo, seleccione la hoja de cálculo Matrices.
  2. Seleccione el rango de celdas desde C1 a E3.
  3. Escriba la fórmula siguiente en la barra de fórmulas y, a continuación, presione CTRL+MAYÚS+ENTRAR:

=Datos!E1:G3

Verá el resultado siguiente.

Resultados en la hoja de cálculo Matrices

La fórmula se vincula a los valores almacenados en las celdas E1 a G3 de la hoja de cálculo Datos. La alternativa a esta fórmula de matriz de varias celdas es colocar una fórmula única en cada celda de la hoja de cálculo Matrices, tal como sigue.


=Datos!E1 =Datos!F1 =Datos!G1
=Datos!E2 =Datos!F2 =Datos!G2
=Datos!E3 =Datos!F3 =Datos!G3

Si modifica algunos de los valores de la hoja de cálculo Datos, esas modificaciones aparecen en la hoja de cálculo Matrices. Recuerde que para cambiar valores de la hoja de cálculo Datos, tendrá que seguir las reglas para modificar fórmulas de matriz. Para obtener más información acerca de esas reglas, vea la sección Obtener información acerca de las fórmulas de matriz.

Crear una constante de matriz a partir de valores existentes

  1. En la hoja de cálculo Matrices, seleccione las celdas comprendidas entre C1 y E3.
  2. Presione F2 para ir al modo de edición.
  3. Presione F9 para convertir las referencias de celda en valores. Excel convierte los valores en una constante de matriz.
  4. Presione CTRL+MAYÚS+ENTRAR para especificar la constante de matriz como una fórmula de matriz.

Excel sustituye la fórmula de matriz =Datos!E1:G3 por la siguiente constante de matriz:

={1,2,3;5,6,7;9,10,11}

Se ha roto el vínculo entre las hojas de cálculo Datos y Matrices y la fórmula de matriz ha sido sustituida por una constante de matriz.

Contar los caracteres de un rango de celdas

En el ejemplo siguiente se muestra cómo contar el número de caracteres, incluidos los espacios, de un rango de celdas.

  • En la hoja de cálculo Datos, escriba la siguiente fórmula en la celda C7 y presione CTRL+MAYÚS+ENTRAR:

=SUMA(LARGO(C1:C5))

En la celda C7 aparece el valor 47.

En este caso, la función LARGO devuelve la longitud de cada cadena de texto de cada una de las celdas del rango. A continuación, la función SUMA agrega esos valores y muestra el resultado en la celda que contiene la fórmula, C7.

Buscar los n valores más pequeños de un rango

En este ejemplo se muestra cómo buscar los tres valores más pequeños de un rango de celdas.

  1. En la hoja de cálculo Datos, seleccione las celdas comprendidas entre A12 y A14.

Este conjunto de celdas contendrá los resultados devueltos por la fórmula de matriz.

  1. En la barra de fórmulas, escriba la siguiente fórmula y presione CTRL+MAYÚS+ENTRAR:

=K.ESIMO.MENOR(A1:A10,{1;2;3})

Los valores 400, 475 y 500 aparecen en las celdas A12 a A14, respectivamente.

En esta fórmula se utiliza una constante de matriz para evaluar la función K.ESIMO.MENOR tres veces y devolver los integrantes más pequeño (1), segundo más pequeño (2) y tercero más pequeño (3) de la matriz incluida en las celdas A1:A10. Para buscar más valores, agregue más argumentos a la constante y un número equivalente de celdas de resultados al rango A12:A14. También puede usar funciones adicionales con está fórmula, por ejemplo SUMA o PROMEDIO. Por ejemplo:

=SUMA(K.ESIMO.MENOR(A1:A10,{1;2;3}))

=PROMEDIO(K.ESIMO.MENOR(A1:A10,{1;2;3}))

Buscar los n valores mayores de un rango

Para buscar los valores mayores de un rango, puede reemplazar la función K.ESIMO.MENOR por la función K.ESIMO.MAYOR. Además, en el ejemplo siguiente se emplean las funciones FILA e INDIRECTO.

  1. En la hoja de cálculo Datos, seleccione las celdas comprendidas entre A12 y A14.
  2. Presione SUPR para borrar la fórmula existente, pero deje las celdas seleccionadas.
  3. En la barra de fórmulas, escriba esta fórmula y presione CTRL+MAYÚS+ENTRAR:

=K.ESIMO.MAYOR(A1:A10,FILA(INDIRECTO("1:3")))

Los valores 3200, 2700 y 2000 aparecen en las celdas A12 a A14, respectivamente.

En este punto, es posible que le ayude saber más sobre las funciones FILA e INDIRECTO. Puede utilizar la función FILA para crear una matriz de enteros consecutivos. Por ejemplo, seleccione una columna vacía de 10 celdas en el libro de prácticas, escriba esta fórmula de matriz en las celdas A1:A10 y presione CTRL+MAYÚS+ENTRAR:

=FILA(1:10)

La fórmula crea una columna de 10 enteros consecutivos. Para ver un problema potencial, inserte una fila sobre el rango que contiene la fórmula de matriz (es decir, sobre la fila 1). Excel ajusta las referencias de fila y la fórmula genera los enteros de 2 a 11. Para solucionar el problema, agregue la función INDIRECTO a la fórmula:

=FILA(INDIRECTO("1:10"))

La función INDIRECTO usa cadenas de texto como argumentos (es por esta razón por lo que el rango 1:10 está incluido entre comillas tipográficas). Excel no ajusta los valores de texto cuando se insertan filas o se mueve la fórmula de matriz. El resultado es que la función FILA siempre genera la matriz de enteros que desea el usuario.

Vamos a examinar la fórmula utilizada anteriormente: =K.ESIMO.MAYOR(A1:A10,FILA(INDIRECTO("1:3"))), desde los paréntesis interiores hacia fuera: la función INDIRECTO devuelve un conjunto de valores de texto, en este caso los valores de 1 a 3. La función FILA a su vez genera una matriz en columna de tres celdas. La función K.ESIMO.MAYOR utiliza los valores del rango de celdas A1:A10 y lo evalúa tres veces, una por cada referencia devuelta por la función FILA. Se devuelven los valores 3200, 2700 y 2000 a la matriz en columna de tres celdas. Si desea buscar más valores, agregue un rango de celdas mayor a la función INDIRECTO.

Por último, puede usar esta fórmula con otras funciones, como SUMA y PROMEDIO.

Buscar la cadena de texto más larga de un rango de celdas

Con este ejemplo se busca la cadena de texto más larga de un rango de celdas. Esta fórmula sólo funciona cuando un rango de datos contiene una única columna de celdas.

  • En la hoja de cálculo Datos, borre la fórmula existente en la celda C7, escriba la siguiente fórmula en esa celda y presione CTRL+MAYÚS+ENTRAR:

=INDICE(C1:C5,COINCIDIR(MAX(LARGO(C1:C5)),LARGO(C1:C5),0),1)

En la celda C7 aparece el valor saltó sobre.

Vamos a examinar la fórmula desde los elementos interiores hacia fuera. La función LARGO devuelve la longitud de cada uno de los elementos del rango de celdas C1:C5. La función MAX calcula el valor más largo de entre esos elementos, que corresponde a la cadena de texto más larga, que se encuentra en la celda C3.

En este punto es en donde la cosa se complica un poco. La función COINCIDIR calcula el desplazamiento (la posición relativa) de la celda que contiene la cadena de texto más larga. Para ello, necesita tres argumentos: un valor de búsqueda, una matriz de búsqueda y un tipo de coincidencia. La función COINCIDIR busca el valor de búsqueda especificado en la matriz de búsqueda. En este caso, se trata de la cadena de texto más larga:

(MAX(LARGO(C1:C5))

y esa cadena reside en esta matriz:

LARGO(C1:C5)

El argumento de tipo de coincidencia es 0. El tipo de coincidencia puede constar de un valor 1, 0 ó -1. Si especifica 1, COINCIDIR devuelve el valor más largo que sea menor o igual que el valor de búsqueda. Si especifica 0, COINCIDIR devuelve el primer valor exactamente igual que el valor de búsqueda. Si especifica -1, COINCIDIR busca el valor más pequeño que sea mayor o igual que el valor de búsqueda especificado. Si omite un tipo de coincidencia, Excel asume 1.

Por último, la función INDICE toma estos argumentos: una matriz y un número de fila y columna de esa matriz. El rango de celdas C1:C5 proporciona la matriz, la función COINCIDIR proporciona la dirección de las celdas y el argumento final (1) especifica que el valor proviene de la primera columna de la matriz.

Para obtener más información acerca de las funciones que se han tratado aquí, vea la Ayuda de Excel.

Volver al principio Volver al principio

Trabajar con fórmulas de matriz avanzadas

En esta sección se proporcionan ejemplos de fórmulas de matriz avanzadas.

Sumar un rango que contiene valores de error

La función SUMA de Excel no funciona cuando se intenta sumar un rango que contiene un valor de error, como #N/A. En este ejemplo se muestra cómo sumar los valores de un rango con el nombre Datos que contiene errores.

=SUMA(SI(ESERROR(Datos),"",Datos))

La fórmula crea una nueva matriz que contiene los valores originales menos los valores de error. A partir de las funciones interiores y hacia fuera, la función ESERROR busca errores en el rango de celdas (Datos). La función SI devuelve un valor concreto si una condición especificada se evalúa en TRUE y otro valor si se evalúa en FALSE. En este caso, devuelve cadenas vacías ("") para todos los valores de error, ya que se evalúan en TRUE, y devuelve los valores restantes del rango (Datos), dado que se evalúan en FALSE, lo que significa que no contienen valores de error. A continuación la función SUMA calcula el total de la matriz filtrada.

Contar el número de valores de error de un rango

Este ejemplo es similar a la fórmula anterior, pero devuelve el número de valores de error de un rango de nombre Datos en lugar de filtrarlos:

=SUMA(SI(ESERROR(Datos),1,0))

Esta fórmula crea una matriz que contiene el valor 1 para las celdas que contienen errores y el valor 0 para las que no contienen errores. Puede simplificar la fórmula y conseguir el mismo resultado si quita el tercer argumento de la función SI, de este modo:

=SUMA(Si(ESERROR(Datos),1))

Si no especifica el argumento, la función SI devuelve FALSE cuando una celda no contiene un valor de error. Puede simplificarla aún más:

=SUMA(SI(ESERROR(Datos)*1))

Esta versión funciona porque TRUE*1=1 y FALSE*1=0.

Sumar valores basados en condiciones

Es posible que necesite sumar valores basados en condiciones. Por ejemplo, esta fórmula de matriz suma únicamente los enteros positivos de un rango de nombre Ventas:

=SUMA(SI(Ventas>0,Ventas))

La función SI crea una matriz de valores positivos y valores falsos. La función SUMA básicamente omite los valores falsos, dado que 0+0=0. El rango de celdas que se utiliza en esta fórmula puede estar compuesto por cualquier número de filas y columnas.

También es posible sumar valores que cumplan más de una condición. Por ejemplo, esta fórmula de matriz calcula los valores mayores que 0 y menores o iguales que 5:

=SUMA((Ventas>0)*(Ventas<=5)*(Ventas))

Tenga en cuenta que esta fórmula devuelve un error cuando el rango contiene una o más celdas no numéricas.

También es posible crear fórmulas de matriz que utilicen un tipo de condición O. Por ejemplo, puede sumar valores que sean menores que 5 y mayores que 15:

=SUMA(SI((Ventas<5)+(Ventas>15),Ventas))

La función SI busca todos los valores menores que 5 y mayores que 15 y se los pasa a la función SUMA.

 Importante   No es posible utilizar las funciones Y y O directamente en las fórmulas de matriz, ya que esas funciones devuelven un único valor, ya sea TRUE o FALSE, y las funciones de matriz necesitan matrices de resultados. Puede solucionar este problema si usa la lógica de la fórmula anterior. En otras palabras, puede realizar operaciones de coincidencia, como suma o multiplicación, en valores que cumplan la condición O o Y.

Calcular una media que excluya los ceros

En este ejemplo se muestra cómo quitar los ceros de un rango cuando necesite calcular la media de los valores de dicho rango. La fórmula utiliza un rango de datos de nombre Ventas:

=PROMEDIO(SI(Ventas<>0,Ventas))

La función SI crea una matriz de valores que no son iguales a 0 y, a continuación, pasa dichos valores a la función PROMEDIO.

Contar el número de diferencias entre dos rangos de celdas

Esta fórmula de matriz compara los valores de dos rangos de celdas denominados MisDatos y TusDatos y devuelve el número de diferencias entre ellos. Si el contenido de los dos rangos es idéntico, la fórmula devuelve 0. Para utilizar esta fórmula, los rangos de celdas deben ser del mismo tamaño y de la misma dimensión:

=SUMA(SI(MisDatos=TusDatos,0,1))

La fórmula crea una nueva matriz del mismo tamaño que los rangos que se están comparando. La función SI rellena la matriz con el valor 0 y el valor 1 (0 para no coincidencias y 1 para celdas idénticas). A continuación, la función SUMA devuelve la suma de los valores de la matriz.

Puede simplificar la fórmula de esta manera:

=SUMA(1*(MisDatos<>TusDatos))

Al igual que la fórmula que cuenta los valores de error de un rango, esta fórmula funciona porque TRUE*1=1 y FALSE*1=0.

Buscar la ubicación del valor máximo de un rango

Esta fórmula de matriz devuelve el número de fila del valor máximo de un rango de una columna denominado Datos:

=MIN(SI(Datos=MAX(Datos),FILA(Datos),""))

La función SI crea una nueva matriz que corresponde al rango Datos. Si una celda correspondiente contiene el valor máximo del rango, la matriz contiene el número de fila. De lo contrario, contiene una cadena vacía (""). La función MIN usa la nueva matriz como su segundo argumento y devuelve el valor más pequeño, que corresponde al número de fila del valor máximo de Datos. Si el rango Datos contiene valores máximos idénticos, la fórmula devuelve la fila del primer valor.

Si desea devolver la dirección de celda real de un valor máximo, use esta fórmula:

=DIRECCION(MIN(SI(Datos=MAX(Datos),FILA(Datos),"")),COLUMNA(Datos))

Volver al principio Volver al principio

 
 
Corresponde a:
Excel 2007