POWER PIVOT 公式根據工作日顯示前一天

POWER PIVOT 公式根據工作日顯示前一天

我有兩列稱為

第一欄日曆日期:

16/02/2015

前一天第二欄:

Yes

我目前使用的公式:

if([calendar Date])=today-1,"YES","NO").

第二列傳回基於第一列的值。

然而,我遇到的問題是當我在星期一運行數據時,我們有日曆日期(星期五)。因此它顯示“否”,因為公式僅返回前一天的資料。

所以我想要這樣的東西只有當我在星期一跑步時它應該給我if([calendar Date])=today-3,"YES","NO").And all other workdays if([calendar Date] )=today -1,“是”,“否”)

你能幫我解決這個問題嗎?

答案1

您想要強迫將星期五和星期六解釋為星期日(星期一的前一天)。

=IF(
   IF(WEEKDAY(A2) = 6,   <-- Friday
     A2 + 2,             <-- Becomes Sunday
     IF(WEEKDAY(A2) = 7, <-- Saturday
       A2 + 1,           <-- Becomes Sunday
       A2                <-- Unadjusted
     )
   ) = TODAY() - 1,
   "YES",
   "NO"
 )

如果您在星期六閱讀報告,則公式將不起作用 - 因為就公式而言,星期六有 0 個昨天和 2 個明天。

未註釋: =IF( IF(WEEKDAY(A2)= 6, A2 + 2, IF(WEEKDAY(A2) = 7, A2 + 1, A2)) = TODAY() - 1, "YES", "NO")

答案2

使用工作日函數為if.

工作日使用返回日期開始日期工作天數作為參數(因此跳過週末)。在您的情況下,您應該將[日曆日期]作為開始日期, 和工作天數設定為 1。

此外,您可以將假期日期傳遞給 WORKDAY 函數,將假期也視為非工作日。

將類似這樣的內容放入儲存格中:

=IF(WORKDAY([Calendar Date];1)=TODAY();"YES";"NO")

相關內容