Formula di Excel: ore totali comprese tra due volte -

Sommario

Sommario

Per calcolare il numero totale di ore tra un'ora di inizio e di fine che si sovrappongono a un periodo di interesse con una data ora di inizio e di fine, è possibile utilizzare una formula basata sulle funzioni SE, MAX e MIN. Nell'esempio mostrato, la formula in E5 è:

=IF(B5

where "lower" is the named range I5, and "upper" is the named range I6.

Thanks to Robert Johnson for his fix to the original formula, which broke in certain cases. Current version should work when upper> lower.

Explanation

In this example, we first calculate the total hours between the start time and end time. Then we figure out the total hours that overlap "the period of interest". Using these two values, we can figure out all remaining hours. In the example shown, "lower" is lower bound for the period of interest, and "upper" is the upper bound.

To calculate total hours between start and end time, the formula in D5 is:

=MOD(C5-B5,1)

This formula is explained in more detail here.

The formula in E5 works in two parts, using IF to control flow. If the start time is less than the end time, we calculate the overlap with:

MAX(0,MIN(C5,upper)-MAX(B5,lower))

If the start time is greater than end time (i.e. start time and end time cross midnight), we use:

MAX(0,upper-B5)+MAX(0,C5-lower)

By using MAX with zero, we prevent negative values from being used.

Finally, to figure out "Remaining" hours (i.e. hours that do not fall in the period of interest) we simply subtract E5 (included) from D5 (total duration).

Articoli interessanti...