La función SUMAR.SI en Excel nos permite hacer una suma de celdas que cumplen con un determinado criterio y de esta manera excluir aquellas celdas que no nos interesa incluir en la operación.

Sintaxis de la función SUMAR.SI

La función SUMAR.SI tiene tres argumentos que explicaré a continuación.

Sintaxis de la función SUMAR.SI en Excel

  • Rango (obligatorio): El rango de celdas que será evaluado.
  • Criterio (obligatorio): La condición que deben cumplir las celdas que serán incluidas en la suma.
  • Rango_suma (opcional): Las celdas que se van a sumar. En caso de que sea omitido se sumaran las celdas especificadas en Rango.

El Criterio de la suma puede estar especificado como número, texto o expresión. Si es un número hará que se sumen solamente las celdas que sean iguales a dicho número. Si el criterio es una expresión podremos especificar alguna condición de mayor o menor que.

Si el Criterio es un texto es porque seguramente necesito que se cumpla una condición en cierta columna que contiene datos de tipo texto pero realizar la suma de otra columna que tiene valores numéricos. Todos estos casos quedarán más claros con los siguientes ejemplos.

Ejemplos de la función SUMAR.SI

El primer ejemplo es muy sencillo ya que de una lista de valores aleatorios quiero sumar todas las celdas que contienen el número 5.

Ejemplo de la función SUMAR.SI en Excel

Recuerda que la función SUMAR.SI no realiza una cuenta de las celdas que contienen el número 5, de lo contrario el resultado habría sido 2. La función SUMAR.SI encuentra las celdas que tienen el número 5 y suma su valor. Ya que las celdas A2 y A7 cumplen con la condición establecida se hace la suma de ambas celdas lo cual da el número 10 como resultado.

Ahora cambiaré la condición a una expresión y sumare aquellas celdas que sean menores a 3. Observa el resultado de esta nueva fórmula.

Criterio de la función SUMAR.SI como expresión

Ventas de un vendedor

Ahora utilizaremos un criterio en texto y el tercer argumento de la función SUMAR.SI el cual nos deja especificar un rango de suma diferente al rango donde se aplica el criterio. En el siguiente ejemplo tengo una lista de vendedores y deseo conocer el total de ventas de un vendedor específico.

Para obtener el resultado colocaré el rango A2:A10 como el rango que debe ser igual al texto en la celda F1. El tercer argumento de la función contiene el rango C2:C20 el cual tiene los montos que deseo sumar.

Cireterio de la función SUMAR.SI como texto

La celda F2 que contiene la función SUMAR.SI muestra la suma de las ventas que pertenecen a Juan y excluye el resto de celdas.  Podría modificar un poco esta fórmula para obtener las ventas de un mes específico. Observa el resultado de esta adecuación en la celda F5:

Especificar un rango de suma en la función SUMAR.SI en Excel

Compartir →

78 comentarios para La función SUMAR.SI en Excel

  1. alejandro dice:

    me ha servido de mucho la informacion, pero la salto una duda en la cual no la puede solucionar te pongo un ejemplo:
    00:04:51
    00:04:51
    00:04:50
    00:00:47
    1 Ev
    00:00:34
    1 Ev
    1 Ev
    00:00:40
    00:00:12
    00:01:08
    00:00:23
    00:01:06
    00:00:16
    00:00:04
    en la cual necesito una formula que me sume solamente los minutos

    • Moises dice:

      Alejandro, creo que para tu problema no te ayudará mucho la función SUMAR.SI. Te recomiendo utilizar primero la función MINUTO para extraer da cada uno de los datos los minutos y posteriormente hacer la suma.

  2. Alejandro dice:

    Hola, estoy armando una planilla de control de stock y quería saber como hago para que el “criterio” este definido por el contenido de una celda, ej: =SUMAR.SI(Compras!A6:A200;”=A$5″;Compras!D6:D200). En donde A5 es un número de codigo de articulo. Gracias

    • Moisés Ortíz dice:

      Hola Alejandro,
      Puedes hacerlo si introduces el criterio en una celda anteponiendo una comilla sencilla (solo aplica cuando el criterio inicia con un símbolo de igual). Por ejemplo, puedo almacenar el criterio en la celda B1 de la siguiente manera ‘=5
      Después, en la función SUMAR.SI, puedo utilizar la condición de la celda B1 solamente indicándola: SUMAR.SI(A1:A200, B1) y esta fórmula sumara todos los valores dentro del rango A1:A200 que sean iguales a 5.

  3. kalahand dice:

    que onda moi. como le hago para sumar solo las horas completas en una lista de asistencias de cada 15na
    gracias

  4. CAROLINA dice:

    Hola necesito hacer una formula en la cual me de el total de hombres con edad de 12, pero hombres y mujeres estan en una fila y las edades en otra, gracia.
    Ojala pueda ayudarme

  5. Patricia dice:

    Estimado muy bueno tu aporte pero estoy elaborando las asistencias de un grupo de personas en la cual el numero 1 es falta el numero 2 es falta justificado y el numero 3 es atraso, pero quisiera contar en columnas diferentes las faltas, los atrasos y las justificadas,para que me de el total de cada una. que función debería usar ayúdame gracias.
    Buen trabajo

  6. ALFREDO dice:

    BUENA AYUDA, HE BUSCADO ESTE PROCEDIMIENTO DE LA FUNCION SUMAR.SI POR SEMANAS, GRACIAS POR LA AYUDA

  7. Juan dice:

    Hola, a ver si me puedes ayudar.
    Tengo celdas de esta forma 3J-2I-5R (todo está en la misma celda), 2J-1I-0R, CJ,0J-2I-0R,…y algunas celdas vacías, dispuestas en filas. Necesito sumar en una columna todos los números que aparecen delante de “J” (por ejemplo, con las celdas que te indico debe salir la suma 5), en otra todos los que aparecen delante “I” y todos de la “R”.
    Un saludo.

  8. Eduardo dice:

    Hola!! de ante mano gracias por tu ayuda, tengo problemas con la funcion Contar si, deseo que el rango este restringido a ciertas celdas no adayacentes: =CONTAR.SI(E6; G6; I6; K6; M6; O6; Q6; S6; U6; W6; Y6; AA6; AC6; AE6; AG6; AI6; AK6; AM6, >0) son celdas de una misma fila pero no quiero que me cuente todas porque hay celdas con numero positivos tambien pero que no deben tomarse en cuenta, o hay otra manera? como seleccionar toda la fila como rango pero excluir ciertas celdas?? estoy todo el dia con esto.. :( seria estupendo una ayuda en estos momentos… gracias

    • Moisés Ortíz dice:

      Hola Eduardo, si las celdas que deseas contar no tienen alguna característica en común que permita diferenciarlas de las demás celdas, entonces es prácticamente imposible hacer algo al respecto y tendrás que seguir indicando celda por celda. Sugiero que tomes un tiempo para analizar la información y poder determinar si es posible encontrar algún patrón en los datos.

  9. Anyelinne dice:

    Hola Moises: que función tengo que emplear cuando quiero sumar diferentes celdas pero que éstas estan en blanco, llevo el control de los pagos que me hacen 500 compañero, por semana, sin embargo no todos cumplen y me quedan a deber… las celdas que quedan en blanco tienen un valor o sea me tienen que pagar cada semana por decir un ejemplo 55 pesos por cada miembro ¿como le hago para saber cuanto es lo que me deben ? que al termino de cada semana y de cada mes saber que cantidad me hace falta que me paguen los compañeros

  10. Pedro Blanco dice:

    Hola buenos dias.
    Tengo una hoja excell en la que anoto a los proveedores, ejem “Lipa” en una columna y el material que suministran estos en otra ejem “maquina mixta”, pero cada proveedor me suministra varios materiales.
    Pues bien, ahora quiero sumar las cantidades gastadas o invertidas en cada material y en un determinado proveedor, por lo que serían varios criterios para obtener un único rango de suma, como puedo hacer esto. Solo soy capaz de insertar un criterio. Sería así???? =SUMAR.SI(C4:C91; “Lipa”; E4:E91;”*Mixta*”;O4:O91)
    Gracias de antemano

  11. FRANCISCO MEDRADO dice:

    SALUDOS, TE PIDO AYUDA EN LO SIGUIENTE: QUIERO OBTENER EL TOTAL DE VECES QUE SE REPITE UNA LETRA ANOTADA EN DIFERENTES CELDAS QUE LA IDENTIFIQUE DE OTRAS LETRAS: EJEMPLO: SI TENGO UNA CARACTERISTICA DE B= BUENO, MB= MUY BUENO, E=EXCELENTE, Y B= BUENO SE REPITE EN DOS VECES, ¿CÓMO HACER PARA QUE EN OTRA CELDA APAREZCA QUE B SE REPITIO EN DOS VECES?

  12. ROBERTO BOHORQUEZ dice:

    Moises
    Gracias, toda la informacion me ha servido y casi lo logro.Me queda un detalle y es como sumo valores alfanumericos dentro de un rango.
    ejemplo tengo codigos A00, B09 Y OTROS en la columna codicos y tengo que contar cuantos de A, cuantos de B, (b00 a b999), pero tengo una variable que me pide contar o sumar los codigos que sae encuentren entre : por ejemplo A00 HASTA B499 y otra celda me pide contar o sumar los codigos que se encuentren entre B500 hasta b999. no se como hacer. Para las de una sola letra utilizo por ej: =CONTAR.SI.CONJUNTO(X6:X309;”c*”), y me da el resultado de todos los codigo de C00 hasta C999.
    garcias estoy super urgido

    • Moisés Ortíz dice:

      Hola Roberto, lo que más te conviene es utilizar un par de columnas auxiliares donde separes los códigos en dos columnas: la letra y el valor numérico. Si en la columna B tuvieras todas las letras y en la columna C tuvieras los números, entonces podrías utilizar una fórmula como la siguiente:
      =CONTAR.SI.CONJUNTO(B1:B100, “A”) + CONTAR.SI.CONJUNTO(B1:B100, “B”, C1:C100, “<=499″)

      Esta formula funciona porque, bajo este supuesto, el código A250 tendría en la columna B el valor “A” y en la columna C el valor 250. El código B100 tendría en la columna B el valor “B” y en la columna C el valor 100. La primera parte de la fórmula cuenta todos los códigos con A y le suma todos los códigos con la letra B que además tienen un valor menor o igual a 499 en la columna C.
      Espero sea de utilidad para encontrar solución a tu problema.

  13. Johann dice:

    Moises, necesito tu ayuda
    Tengo una lista de datos y esta se suman y da un total, pero todos los días agrego datos y estos los debo sumar.
    Existe una forma automática, que al momento que agregue datos estos se sumen

  14. Julio dice:

    Hola, muy buenos aportes de verdad, felicidades, tengo una consulta, se puede hacer una operación que sume celdas pero con contenido de texto y no números, ej. si tengo 10 celdas, y en tres celdas tengo textos, en el relutado de mi formula me marque 3, no se si es posible, gracias

    • Moisés Ortíz dice:

      Hola Julio, lo más fácil es crear una columna auxiliar donde utilices la función ESTEXTO la cual devolverá VERDADERO si la celda contiene un texto. Despúes utiliza la función CONTAR.SI para contar la cantidad de valores verdaderos que existen.

  15. Sara dice:

    Hola Moises, a diferencia de Julio, yo necesito sumar datos de una columna en la que tengo valores que van de 0 a 12 y valores de “No disponible”, de la forma :0, 5, ND, 2,3, ND. ¿Cómo puedo hacer para que me sume los datos sólo si son números (que en este caso me sálga 10) y se salte las letras?

    • Moisés Ortíz dice:

      Hola Sara, Puedes utilizar la función SUMA ya qye no tiene problema cuando existen valores de texto mezclados con números en la misma columna. Solo sumará los valores numéricos. Si quieres implementar la solución de la columna auxiliar, entonces puesde utilizar la función ESNUMERO para saber si el dato de la celda es efectivamente un valor numérico.

  16. orlando mayor dice:

    hola buen dia amigo.. yo estoy haciendo un formato de excel para llevar el inventario de productos de la empresa. el problema que se me presenta es, tengo 2 columnas en un libro, una con los nombres de los productos y la otra columna con los Numero de Lotes, digamos que el nombre del producto es MULTIUOS y Numero de lote es 12345, cuando la tabla vea que en la columna se repite Multiuso – 12345 me sume 1 en la celda donde quiero llevar el conteo, ya que Multiuos puede ser de diferentes Numeros de lotes y quiero llevar el conteo del producto por lotes.

  17. Karla Morales dice:

    Hola tengo un problema.

    como puedo sumar todas las celdas de una columna, tengo problema porque no son numeros sino palabras:
    por ejemplo tengo de B2 a B36 la palabra “alto” yo se que la suma seria 35. Pero necesito una formula para sumarlos.

    Gracias

  18. Donald dice:

    Hola Moi, como podría utilizar esa función o cual función podría utilizar para hacer sumas de rango que me traigo con la función del frequency. Te explico mejor el caso, tengo dos columnas de rango que es por ejemplo: $0 y la otra es $100 , eso significa que tengo 320 personas entre esos 2 rangos, y otra columna que es como la base de datos, que tiene todos los montos en dolares.Con el frequency saco cuantas personas entran en el rango de $0 a $100 o de $101 a $200, ahora yo quiero saber cuanto seria la suma en dolares de todos los que estén en ese rango de $0 a $100, etc (recuerda que tengo una columna en la misma hoja con todos los montos en $ que es mi base de datos)

    • Moisés Ortíz dice:

      Hola Donald, me parece que la función SUMAR.SI sería adecuada porque solo tienes una condición. Suponiendo que los montos están en el rango B1:B100, la fórmula sería la siguiente:
      =SUMAR.SI(B1:B100,”<100″)

  19. Pili dice:

    Hola,

    Necesito sumar una columna P:P, si la columna E:E (que es el nombre del cliente) contiene una palabra, no es igual a toda la celda, sino que contiene una palabra común. No puedo poner igual exactamente porque en cada celda esta escrito de una forma, y no puedo ponerlas todas iguales exactas porque son datos que se actualizan porque están vinculados al programa con el que trabajo y ahí esta escrito de todas las formas, abreviados, etc…

    • Moisés Ortíz dice:

      Hola Pili, te dejo un vínculo a un artículo donde encontrarás un ejemplo de cómo buscar una palabra dentro de una celda (es el último ejemplo):
      http://exceltotal.com/contar-caracteres-con-excel/

      Lo mejor será tener una columna auxiliar donde tienes como resultado el número de veces que aparece la palabra y puedes utilizar esa columna como la condición de la función SUMAR.SI. Si en la columna auxiliar el número es mayor a cero, querrá decir que si aparece y deberás incluirla en la suma.

  20. ANA dice:

    Hola Moises
    Estoy haciendo una lista de gastos a la cual le tengo asignado un numero de cuenta para categorizar el tipo de gastos. Por ejemplo 1001 entra todo los gastos comestibles. Entonces tengo en la columna “A” todos los numeros de cuenta los cuales se repiten deacuerdo al flujo de gastos del mes. En la columna “D” el valor en $ ( B y C son fecha y nombre del comercio). “SUMAR.SI” es excelente para segregar los gastos por numero de cuenta y gracias por eso, pero quisiera poder correr la formula hacia abajo teniendo en cuenta que voy cambiando el numero de cuenta del que quiero obtener su valor en dolares. El problema es que al correr la formula hacia abajo los rangos van ascendiedo. Hay una forma para hacer esto y que lo unico que valla cambiando sea la celda con el numero de cuenta.
    A D E F
    1 1001 $10.00 1001 =SUMAR.SI(A1:A4,E1,D1:D4) (nota: puedo correr esta formula hacia abajo?)
    2 1002 $20.00 1002
    3 1001 $5.00
    4 1001 $6.00
    1002 $35.00

    • Moisés Ortíz dice:

      Hola Ana, debes utilizar referencias absoultas para los rangos que deseas que permanezcan “fijos” al copiar la fórmula hacia abajo:
      =SUMAR.SI($A$1:$A$4,E1,$D$1:$D$4)

  21. Ana Luisa dice:

    Necesito saber una fórmula o función para sumar fechas sin contar sábados y domingos

  22. comarfe dice:

    Gracias por ayudar a los que no tenemos tan buen conocimiento, tengo esta consulta en la columna A tengo fecha de venta en la B descripción y en la C el valor lo que quiero es una formula que me permita sumar por fecha, como tengo ya varios años quiero que me sume enero de cada año por separado ejemplo enero de 2007 enero de 2008 etc. Gracias por tu colaboración.

  23. Pablo dice:

    Hola Moisés, ante todo la página es grandiosa, sos de una gran ayuda para muchos y está buenísimo.
    Pasando a la consulta que tengo, resulta que tengo una seria de números que copie de una página web y pegué en excel 2010, luego a través de la fórmula Sumar.Si quise seleccionar algunos números para sumarlos si cumplían una condición pero me el resultado me ha dado cero. Entiendo que esos números están como datos entonces traté de extraerlos con la función Extrae pero he llegado a lo mismo. Qué es lo que sucede y cómo hago para solucionarlo?
    Ahora ya lo he hecho a mano porque tenía que sacar el trabajo pero no está bueno quedarse con dudas, me voy a encontrar nuevamente con esto en los próximos días y será más volumen de datos.
    Te agradezco desde ya la ayuda, espero haberme explicado, saludos desde Rosario, Argentina.

    • Moisés Ortíz dice:

      Hola Pablo, es probable que al importar/copiar los números de la página Web queden con un formato de tipo texto y por lo tanto Excel no puede hacer operaciones aritméticas con ellos. Para convertir esos datos a números puedes multiplicar su valor por 1 y de esa manera Excel los convertirá en un valor numérico.

  24. Gabriel dice:

    Hola, necesito sumar un rango por ejemplo S5 a S20, hasta ahi todo bien, ahora en las celdas figuran valores positivos y negativos y solo necesito que sume los valores POSITIVOS….GRACIAS

  25. JORGE dice:

    como hago (en tu primer ejemplo) para que me sume los valores que cumplen dos condiciones
    mayores a 2 y menores a 5

  26. Eileen Rodriguez dice:

    Hola!! Buen dia, Tengo una duda puedo utilizar la funcion sumar si, para sumar datos que cuyo criterio son fechas que estan en un intervalo, ejemplo =01/02/13

    Saludos!!

  27. Osvaldo dice:

    Hola, esta formula es valida o hay otro metodo para hacer? =SUMAR.SI(H6:H315;”>F6″;I6:I315) por que me da error..

    • Moisés Ortíz dice:

      Hola Osvaldo, me parece que es por el criterio que estás estableciendo. Si quieres comparar con el valor de la celda F6 debes escribir el criterio como “>”&F6

  28. Paz dice:

    Buenas Moisés, a ver si me puedes ayudar. Estoy usando la fórmula sumar.si y lo que necesito es sumar los valores B:B siempre y cuando A:A esté en blanco. En la columna A iré metiendo datos numéricos (del 1 al 12), pero necesito un sumatorio de los que quedan en blanco. Lo he intentado con <1 y no me funciona.
    Gracias por adelantado. Un saludo.

  29. Mariana dice:

    Hola!! necesito saber como hago para sumar por ejemplo la cantidad de productos que comienzan con la letra “C” de una columna. Muchas gracias!!

  30. Diego Migues dice:

    Hola Moisés. Estoy intentando usar la función sumar si. ¿Cómo hago para usar como criterio, valores entre 10 y 30 por ejemplo?
    Esta bien así? =SUMAR.SI(G7:G621;”10=<30":H7:H621)
    Desde ya muchas gracias

  31. Luis dice:

    Moises
    Necesito sumar de una lista de nombres la cantidad que esta en otra celda. Ejemplo: tengo diez clientes y cada uno tiene en otra celda contigua un valor en moneda. La formula necesito que si el nombre empieza con “L”, me sume la cantidad que le corresponde.
    Gracias,

    • Moisés Ortíz dice:

      Hola Luis, debes utilziar el carácter comodín asterisco (*) dentro del criterio de la siguiente manera:
      =SUMAR.SI(A1:A100,”L*”,B1:B100)

      De esta manera la función SUMAR.SI hará la suma de aquellos celdas que comiencen con la letra L.

  32. Adriana dice:

    Hola Moisés, necesito utilizar la función SUMA.SI para sumar las ventas de un vendedor del año 2011 y 2012, al realizar la operación solo me sale el valor de la venta de 2011 sin sumar la del 2012. Agradecería tu guía. Gracias

  33. Daniel dice:

    Hola, no se si podria ayudarme con una duda que tengo, como haria si quiero sumar los sueldos de una lista de empleados pero que su nombre empieze con “R” cuando la celda de nombre viene con “Apellido Nombre”, podria usar esto “=EXTRAE(B14,ENCONTRAR(” “,B14,1)+1,LARGO(B14))” para capturar el nombre en la celda y luego compara con “R*” pero en una matriz eso no funciona o como deberia de hacerlo, Gracias.

    • Moisés Ortíz dice:

      Hola Daniel, no me queda muy claro cuando dices “en una matriz eso no funciona”. Lo que yo haría es lo siguiente: en una columna auxiliar debes obtener el nombre, que en tu caso es la última palabra del texto. Eso lo puedes hacer fácilmente con las instrucciones del siguiente artículo:
      http://exceltotal.com/extraer-la-ultima-palabra-de-un-texto-en-excel/

      Después debes utilizar la función SUMAR.SI aplicando el criterio sobre la columna auxiliar y la condición que mencionas “R*” y copiar la fórmula hacia abajo.

  34. Jhoshua dice:

    hola.
    estupenda tu pag y la ayuda que le brindas a todos.
    yo soy muy nuevo en excel y quisiera saber si se pueden sumar 3 celdas pero que el resultado lo de si, y solo si hay valor en la ultima celda.
    ej. quiero sumar A1+B1- C1 pero que dé el resultado solo si en C1 hay algun valor, pero que si en C1 no hay valor no me de ninguna respuesta.
    te agradezco desde ya tu ayuda….

    • Moisés Ortíz dice:

      Hola Jhoshua, la función SUMAR.SI no te va a ayudar con este problema. Te sugiero utilizar la siguiente fórmula:
      =SI(NO(ESBLANCO(C1)),SUMA(A1:C1),”")

  35. javier dice:

    hola moises me puedes apoyar por favor estoy aplicando la suma normal en una columna pero en la columna tiene formulas y algunas no fueron encontradas y me marca este N/A# pero al momento de sumar no me deja sumar por ese error ay alguna otra forma de sumarl

  36. Fabrizio dice:

    necesito saber como hago para sumar por ejemplo la cantidad de productos que no comienzan con la letra “C” de una columna. gracias!!

    • Moisés Ortíz dice:

      Hola Fabrizio, me parece que por “sumar” te refieres a “contar” y para eso te servirá mejor la función CONTAR.SI. Mi consejo es utilizar una lógica diferente para resolver tu problema, es decir, contar los productos que comienzan con C y restarlo del total de productos. Para contar los productos que comienzan con C podrías utilizar la siguiente fórmula:
      =CONTAR.SI(A1:A50,”C*”)

  37. Alberto Villa dice:

    Hay alguna forma de hacer lo que hace esta funcion, pero contando.

    No se si me explique, mi problema es el siguiente. En una fila escribo varios nombres de marcas que manejo: MODACLUB, TREVO, CASTALIA, despues ingreso modelo, color, talla etc del producto y al final el estatus de este producto en mi bodega: DISPONIBLE, AGOTADO, VERIFICANDO, ETC… Como puedo hacer para que me cuente DISPONIBLES DE MODACLUB, DISPONIBLES DE TREVO, ETC…

  38. Juan dice:

    Buenas noches, tengo una columna con algunas celdas que tienen el número cero y otras tienen un número mayor que cero, deseo saber la forma de tener la cantidad de celdas que tienen número 0 y la cantidad de celdas con número mayor que cero. Gracias

  39. IRIS dice:

    EXCELENTE LA EXPLICACION!!!!!!!!!!!!

  40. Christian dice:

    buen trabajo es casi casi mi biblia del excel para uno que no se nada, pero ahí estoy aprendiendo.

    gracias por el aporte

  41. LEILA dice:

    Fue perfecto!
    Muchas gracias.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>