Rob mantiene estadísticas sobre cada trabajo que completa cada día. Por ejemplo, realiza un seguimiento del número exacto de horas y minutos dedicados a cada trabajo ingresando una hora de inicio (columna B) y una hora de finalización (columna C) para cada trabajo en el formato: 16/05/11 11:25 am. En una columna separada (columna G) tiene la fecha para cada día del mes. A la derecha de cada fecha (en la columna H), quiere mostrar cuántos trabajos completó en cada una de las calendar fechas. Rob se pregunta qué fórmula usaría para calcular este recuento.

Esta tarea no es tan fácil como podría parecer al principio. La razón se debe a la forma en que se almacenan las horas de inicio y finalización.

La columna B contiene la fecha y la hora de inicio en la misma columna, en el formato «16/05/11 11:25 am» y la columna C contiene la fecha y la hora de finalización en el mismo formato. Podría pensar que puede usar la función CONTAR.SI en la columna G, de esta manera:

=COUNTIF(C$2:C$1000,G2)

Sin embargo, esto no funcionará. La razón es simple: la columna G (celda G2, en este caso) contiene una fecha, sin hora. Por ejemplo, podría contener la fecha 16/05/11. Cuando se compara con la celda C2, que podría contener el 16/05/11 11:25 am, no son lo mismo. Recuerde que Excel realiza la comparación en función del número de serie de fecha y hora almacenado en cada celda. Dados los valores de ejemplo que acabamos de mencionar, la celda G2 contendría un número de serie de 39217 y la celda C2 contendría un número de serie de 39217.47569. Dado que estos dos valores no son iguales, COUNTIF no los cuenta como iguales.

Obviamente, una solución sería agregar otra columna que contuviera solo las fechas de finalización de cada trabajo, sin un tiempo. Entonces podría usar la función CONTAR.SI en su fórmula, ya que estaría comparando «manzanas con manzanas», por así decirlo. Pero hay una solución que no requiere usar un resultado intermedio en una nueva columna. Implica asegurarse de que el valor entero de lo que esté en la columna C se compare con las fechas almacenadas en la columna G. Esto se puede hacer usando la función SUMPRODUCT, de esta manera:

=SUMPRODUCT((INT(C$2:C$1000)=G2)*1)

El número entero de cada uno de los valores en el rango C2: C1000 se compara con la fecha en G2, dando una matriz de valores verdaderos y falsos. Al multiplicar cada uno de estos por 1, los valores Verdadero y Falso se convierten en valores 1 y 0, respectivamente. Luego, la fórmula suma estos productos, dando el recuento deseado.

Si lo prefiere, también puede usar la siguiente fórmula, que realiza esencialmente la misma tarea usando SUMPRODUCT:

=SUMPRODUCT(--(INT(C$2:C$1000)=G2))

Uno de los beneficios de usar la función SUMPRODUCT para determinar un resultado es que no necesita usar una fórmula de matriz. Algunas personas, sin embargo, prefieren utilizar fórmulas de matriz. Si te gusta usarlos, puedes usar cualquiera de los siguientes:

=COUNT(IF(INT(C$2:C$1000)=INT(G2),1,FALSE))

=SUM(IF(ROUND(C$2:C$1000,0)=G2,1,0))

Recuerde que las fórmulas de matriz deben ingresarse en una celda usando Ctrl + Shift + Enter.

ExcelTips es su fuente de formación rentable en Microsoft Excel.

Este consejo (10421) se aplica a Microsoft Excel 97, 2000, 2002 y 2003.

Puede encontrar una versión de este consejo para la interfaz de cinta de Excel (Excel 2007 y posterior) aquí:

link: / excelribbon-Counting_Jobs_Completed_On_a_Date [Contando trabajos completados en una fecha].