返回列表 上一主題 發帖

關於weeknum使用限制?

gong版主B18的答案
今年剛好1/1在W01的第一天,所以W01有7天
明年W01只有6天
這樣明年是不是就要重新修改計算式?

TOP

回復 9# gong

這個方法並無法取得真正WEEKNUM
只是從當年1/1日起算每7天為一周的算法
試試
B18=SUMPRODUCT(((INT(($J$2:$J$367-($J$2-WEEKDAY($J$2))-1)/7)+1)=ROW($A1))*(K$2:K$367))
學海無涯_不恥下問

TOP

不太懂為什麼要先減1再除7
之後卻又要再加1
可否解釋?

TOP

回復 13# vvcvc


$J$2-WEEKDAY($J$2)推算出第一周的起始日期本年度起算日
$J$2:$J$367-($J$2-WEEKDAY($J$2))當日日期減去本年度起算日
($J$2:$J$367-($J$2-WEEKDAY($J$2))-1)從起算日至當日經過幾天,為了與7整除會得到0所以加1
INT(($J$2:$J$367-($J$2-WEEKDAY($J$2))-1)/7)與7相除後取整數
整數在第一周會為0,由此推算加1以後才是正確WEEKNUM
學海無涯_不恥下問

TOP

本帖最後由 vvcvc 於 2012-4-7 00:24 編輯

在這個問題的檔案中其實還有一個分頁用來輸入raw data
在每一天的資料統計格子裡用的公式如下
=SUMPRODUCT((登記表!$I$6:$I$9999=$B97)*(登記表!$N$6:$N$9999=--(LEFT(E$16,1))))
$I$6:$I$9999是raw data中日期欄位,用來和計算的分頁比對日期以計算次數
今天發現一個問題
如果我$I$6:$I$9999的日期因同一天要登記多筆記錄
於是未一格一格填入日期而是直接將資料向下拉
使用上方的公式就會認不出下拉的欄位
若一格一格輸入則沒有問題

這是什麼原因?
原本以為在$I$6:$I$9999前加一個datevalue把那些儲存格的值強迫轉成日期來跟B欄的日期比對
但似乎是因為datevalue不是陣列公式而失敗
有什麼方法可以解決嗎?

TOP

        靜思自在 : 君子為目標,小人為目的。
返回列表 上一主題