[英]How do I add to a formula in Excel to ensure an allocated date is not repeated (except under a certain condition)?
我的電子表格用於根據輸入的日期和給定的頻率顯示到期時間:
當前用於填充到期日的公式是;
=IF(H7="Weekly",G7+7,IF(H7="Fortnightly",G7+14,IF(H7="Three Weekly",G7+21,IF(H7="Monthly",G7+30,IF(H7="2 Months",G7+60,IF(H7="3 Months",G7+90,IF(H7="4 Months",G7+120,IF(H7="5 Months",G7+150,IF(H7="6 Months",G7+180,IF(H7="7 Months",G7+210,IF(H7="8 Months",G7+240,IF(H7="9 Months",G7+270,IF(H7="10 Months",G7+300,IF(H7="11 Months",G7+330,IF(H7="12 Months",G7+365,IF(H7="Initial Visit",G7+31))))))))))))))))*
但是,這可能會導致多件事情在同一日期到期,我想避免這種情況,以確保工作量均勻分布或限制為每周最多 7 個事件。
可以在現有公式中添加什么以確保在一個日期只能有一個事件,並且如果現有公式產生一個已經使用的日期,它可以將其分配到下一個可用日期(重復到期之前或之后的最近日期)日期?
您所描述的是非常具體的條件和含義,這會導致很長的公式可以完全准確地包含所有這些條件。
為了避免在上面的公式中出現冗長的 IF 子句鏈,我建議將用於區間選擇的列分成兩列:一列用於數值 (1,...,n),另一列用於區間 class (周、月、初次訪問)。
此外,如下面的屏幕截圖所示,我為“初始訪問”的優先級添加了一個額外的列,並更改了用於新的兩個間隔指定列的非調整到期日的公式。
如黃色突出顯示的那樣,第三份工作的截止日期被推遲了 1 天,以優先考慮“初次訪問”。
公式如下:
=($E4="Initial Visit")*EDATE($C4,1)
=IF($E4="Initial Visit",EDATE($C4,1),IF($E4="Weeks",$C4+$D4*7,IF($E4="Months",EDATE($C4,$D4),"")))
=($E4="Months")*(EDATE($C4,$D4)+SUM((($E$4:$E$8="Weeks")*($C$4:$C$8+$D$4:$D$8*7)=EDATE($C4,$D4))+(($F$4:$F$8)=EDATE($C4,$D4)))) +($E4="Weeks")*(($C4+$D4*7)+SUM((($F$4:$F$8)=($C4+$D4*7))+0)) +($E4="Initial Visit")*EDATE($C4,1)
不過還有一些其他的事情需要注意:
這意味着,例如,當兩個作業的時間段在相同的時間間隔 class(例如“周”)內並且未調整的到期日落在同一日期時,調整后的到期日不會改變它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.