有位網友問到:在 Excel 中如果建立一個含有入住日期和退房日期的住房資料表(如下圖左),該如何自動計算每日住房的人數?

【準備工作】

選取儲存格B1:C27(你的資料範圍),按一下 Ctrl+Shift+F3 鍵,勾選「頂端列」,定義名稱:入住、退房。

 

【輸入公式】

(1) 使用 SUMPRODUCT 函數

儲存格F2:=SUMPRODUCT((退房>E2)*(入住<=E2))

原理是計算某日日期小於退房日且大於或等於住房日的個數(不含退房當日)。

(2) 使用陣列公式

儲存格F2:{=SUM(IF((退房>E2)*(入住<=E2),1,0))}

這是陣列公式,輸入完成要按 Ctrl+Shift+Enter 鍵。

 

【補充資料】

相關之詳細函數說明,請參閱微軟網站:

SUMPRODUCThttp://office.microsoft.com/zh-tw/excel-help/HP010342935.aspx

SUMPRODUCT:傳回各陣列中所有對應元素乘積的總和。

語法:SUMPRODUCT(array1, [array2], [array3], ...)

array1:要求對應元素乘積和的第一個陣列引數。

array2, array3,...:要求對應元素乘積和的第 2 個到第 255 個陣列引數。

註:各陣列必須有相同的維度(相同的列數,相同的欄數)。否則會傳回錯誤值#VALUE!。並且會將所有非數值資料的陣列元素當成0來處理。

arrow
arrow
    全站熱搜

    vincent 發表在 痞客邦 留言(0) 人氣()