Академический Документы
Профессиональный Документы
Культура Документы
=Sum(A1:A10) whereas A1:A10 is an argument for a range of data and return single result to you. Array Formula can accept multi range as argument and return multiple results to you. Attach an extract from a book for introduction of Array Formula, it gives you concept of what is array formula. Nevertheless, bear in mind that user must press CTRL+SHIFT+ENTER to enter a array formula, otherwise Excel will return #VALUE or error result. Regarding the question:
Start Date
First of all, the formula is not =MIN(IF(($E16:$GF16)="X",$E$11:$GF$11,99999)) It is embrace by { } as an Array Formula, above only a normal formula.
= { M I N ( I F ( ( $ E 1 6 : $ G F 1 6 ) = " X " , $ E $ 11 : $ G F $ 11 , 9 9 9 9 9 ) ) }
Then step by step explanation. In row 11, it keeps the extract date of the column, that in cell E11, it captures the input of Time Sheet Start Date on in cell C5, then add one day in cell F11 and so no up to cell GF11. It provides above half year duration for update. Thus $E$11:$GF$11 provides all date number in this schedule. In Excel, all date are counted from 1-Jan-1900, therefore if the format of a data in comma, 1-Jan-2012 will show 40909, 2Jan-2012 with 40910 and so on. In an Array Formula, it returns {40909,40910,40911,40912,40913,40914,40915,40916,} $E16:$GF16 captures all entry of X in respective column, bear in mind the range must same as above $E$11:$GF$11 i.e. column E to column GF. A =If(logic_test, value_if_true, value_if_false) will depend on the result of logic_test (results in true or false) to execute the formula in value_if_true or value_if_false.
/var/www/apps/conversion/current/tmp/scratch11267/95918549.doc
Page 1 of 3
The logic_test ($E16:$GF16)="X" to test each cell in the row 16 whether it (return True) or contains other thing (whatever not equal X, 2012 may have other character or blank, then return False). For Jan 1 2 3 4 example in the range from 1-Jan-12 to 8-Jan-12, it returns S M T W X {FALSE,FALSE,FALSE,TRUE,TRUE,FALSE,FALSE,FALSE}
contains X
5 6 7 8 T F S S x w
In whole =If(logic_test, value_if_true, value_if_false) formula means whenever row 16 contains a X, execute value_if_true that return the respective date number in row 11, otherwise execute value_if_false that insert a number 99999. It results the range from 1-Jan-12 to 8-Jan12 as ={99999,99999,99999,40912,40913,99999,99999,99999}. A =Min(number1, number2, ) function returns the minimal number in the argument, it can be inputted with an array. Therefore =Min({99999,99999,99999,40912,40913,99999,99999,99999}) returns 40912 in cell A15 i.e. 4-Jan-12, the minimal number in the array and which is the earliest date with X.
Finish Date
Similar as above formula, ={(MAX(($E$11:$GF$11)*(($E16:$GF16)="X")))} use Array Formula to find out the latest date that contains a X. $E$11:$GF$11, ($E16:$GF16)=X with same meaning as above. In Excel a logic text TRUE will be treated as 1 for calculation, FALSE as 0 for calculation. For example by multiple two logic texts, the result to be =TRUE*TRUE returns 1; =TRUE*FALSE returns 0; =FALSE*FALSE returns 0; In ($E$11:$GF$11)*(($E16:$GF16)="X")) which equal to
{40909,40910,40911,40912,40913,40914,40915,40916,}*{FALSE,FALSE,FALSE,TRUE,TRUE,FALSE,FALSE,FALSE}
={0,0,0,40912,40913,0,0,0} while whatever times with FALSE returns 0 and 40912*1 = 40912. A =Max(number1, number2, ) function returns the maximum number in the argument, it can be inputted with an array. Therefore =Max({0,0,0,40912,40913,0,0,0}) returns 40913 in cell B15 i.e. 5-Jan-12, the
/var/www/apps/conversion/current/tmp/scratch11267/95918549.doc Page 2 of 3
maximum number in the array and which is the latest date with X (being ignore the last W because of it cannot be passed the logic test in ($E16:$GF16)="X".
/var/www/apps/conversion/current/tmp/scratch11267/95918549.doc
Page 3 of 3