Formulario de contacto

Nombre

Correo electrónico *

Mensaje *

domingo, 16 de octubre de 2016

Suma con dos criterios que contengan un texto especifico en Excel

Hoy vamos a ver algo que en un momento dado te puede venir muy bien

Imaginemos que tuviesemos una tabla algo que así:



Una tabla normal, donde hay una columna de cantidades (columna B) y 2 columnas de clasificación (A y C). También tenemos una columna de Notas, o texto.

Ahora imaginemos que queremos sumar las cantidades de una región. Eso lo podemos hacer fácilmente con la función SUMAR.SI. Y si quisiemos sumas por 2 criterios o más, por ejemplo una región y un tipo, para ello usaríamos SUMAR.SI.CONJUNTO.


Hasta aquí todo bien, no?

Y si lo que necesitasemos sumar fueran las cantidades si los criterios fuesen algo así como que las notas contengan la palabra "Verano" y "Festivo".

Ahí ya todo cambiaría. Ya no podemos utilizar ninguno de los 2 SUMAR.SI a menos que cambiasemos los datos.

Y entonces cómo lo haríamos? Sigue leyendo.


Habría que utilizar funciones de matriz.

Te recomiendo ver el enlace anterior si las funciones matriciales no son tu fuerte,

Bueno, pues ahora sabiendo el alcance de nuestro problema, veamos cómo lo solucionamos.

1) Para ello vamos a utilizar la función HALLAR.

La función HALLAR devuelve la posición inicial de una cadena de texto dentro de otra. A diferencia de ENCONTRAR(), HALLAR() no hace distinción entre mayúsculas y minúsculas. Su sintaxis es HALLAR(texto_buscado, dentro_del_texto, [núm_inicial])

donde:

  • texto_buscado (obligatorio): El texto que se quiere encontrar.
  • dentro_del_texto (obligatorio): El texto que a su vez contiene el texto que se desea encontrar.
  • núm_inicial (opcional): Especifica el carácter donde se iniciará la búsqueda. Si se omite entonces la búsqueda iniciará desde el primer caracter.
Así que si tenemos que el rango a buscar de mi tabla anterior es D2:D10.




Pues entonces para saber si la palabra "Verano" existe en las celdas D2:D10, haríammos lo siguiente:

{=HALLAR("Verano",D2:D10)}  ({} representa funciones matriciales, CTRL + SHIFT +ENTER)

Esto daría como resultado una matriz como la siguiente:

={9;12;9;12;9;12;#¡VALOR!;1;#¡VALOR!}

que implica que Verano aparece en la posición 9 en la celda D2, en la 12 en D3, ...., y no aparece en D8 ni en D10.

2) Si a la fórmula anterior le ponemos un ESNUMERO() antes tendríamos lo siguiente.

{=ESNUMERO(HALLAR("Verano",D2:D10))}={VERDADERO;VERDADERO;VERDADERO;VERDADERO;VERDADERO;VERDADERO;FALSO;VERDADERO;FALSO}

lo cual a convertidos los números anteriores a VERDADERO/FALSO.

Y si ponemos ahora dos signos negativos (--) delante de ESNUMERO, convertiremos los VERDADERO/FALSO en 1 y 0.

Veamoslo:

{=--ESNUMERO(HALLAR("Verano",D2:D10))}={1;1;1;1;1;1;0;1;0}

con el 1 indicando que la celda contiene la palabra buscada, en mi caso verano.

O sea que tenemos una matriz de 9 filas por 1 columna.

3) Si ahora multiplicasemos esa matriz por la matriz de las cantidades (B2:B10) tendríamos los valores sólo cuando encuentra la palabra Verano.

{=--ESNUMERO(HALLAR("Verano",D2:D10))*(B2:B10)}={6562;8502;3673;8420;5975;3457;0;7258;0}

4) Y si ahora sumamos los componentes de esa matriz, tenemos lo deseado!

{=SUMA(--ESNUMERO(HALLAR("Verano",D2:D10))*(B2:B10)})=43847


Y si fuera que contuviese 2 palabras?

Pues se podría hacer de la misma manera, pero añadiendo una matriz más.

Por ejemplo, queremos sumar las que contengan las palabras "verano" y "festivo". Viendo nuestra pequeña tabla, vemos que eso pasa en D2,D4,D6 y D9, y la suma de las cantidades es 23468.

Pues para hacerlo habría que añadir la siguiente matriz


{=ESNUMERO(HALLAR("festivo",D2:D10))} 

de tal modo que quedaría así:

{=SUMA(--ESNUMERO(HALLAR("Verano",D2:D10))*ESNUMERO(HALLAR("festivo",D2:D10))}*(B2:B10)})=23468

Y ya está!!! Espero que haya gustado este truco y que os ayude a entender esa bestia llamada funciones matriciales
 



*********************************************************************************************

Por cierto si necesitas cursos personalizados de Excel via Skype mándame un email a 
elsabiodeexcel@gmail.com.

Nuevos cursos recientemente creados:

1. Tablas dinámicas - 2-3 horas por skype €45
2. Iniciación a las macros - aprende a tu propio ritmo €50

*********************************************************************************************
El Sabio de Excel les quiere recomendar un nuevo ebook que les explicará todo lo que necesitan saber sobre Power Pivots.

EL ADN DE POWER PIVOT

null
Guía paso a paso sobre Power Pivot, construcción de modelo de datos y el lenguaje DAX, con orientación a inteligencia de negocios.
Viñetas red2   Formato: PDF Libre de DRM, Descarga INMEDIATA.
Viñetas red2   Datos Técnicos: 476 Páginas + Compendio de Archivos
Viñetas red2  Precio: $ 32 95 USD (Dólares Americanos)


El Sabio de Excel recibirá una comisión por cada compra del libro que se realice usando el link de a continuación. Esta comisión ayuda (y mucho) a seguir manteniendo esta web. 




****************************************************************************


Te ha gustado el artículo?



No te olvides de mostrar tu gratitud hacia el autor (yo) mediante una de las 3 siguientes acciones:

1. Puedes invitarme a un café pinchando en la siguiente imagen.

Image result for coffee icon


2. Puedes hacer clic en los anuncios mostrados en la página

3. Puedes recomendar el artículo en Google haciendo clic en g+1 (justo después del artículo), también puedes compartirlo en Facebook, y/o dejar comentarios.

Quieres aprender más en Excel o tienes algún problema que necesita solución?

Puedo ofrecer servicios de consultoría así como cursos personalizados online. Mírate el siguiente enlace si estás interesado/a.



Subscríbete y recibe todos las entradas por email


Para ello regístrate suministrando tu email en el sitio "Recibe los trucos en tu email" del menú de la derecha.

O sígueme por las redes sociales

No hay comentarios:

Publicar un comentario