我正在創建每日安排報告。報告中並不是每個職位都必須每天都有人員配備,但是有一些規則可以確定這一點(主要是夏時制),而且我一直在努力找出一種好辦法來做到這一點,這將使任何人都可以證明在任何特定日子需要填寫表格的人。Excel - 從當年的任何一天開始查找特定月份的第n天
我的問題:從11月開始第一個星期日,一個職位不需要隨時配備人員。這一直持續到3月的第二個星期天。我希望顯示這個位置的盒子根據今天的日期(在E1中使用= Today()顯示)有條件地格式化。
我得到了一些接近工作的東西(儘管它看起來令人厭惡),並且會引用來源,但我剛回來到不同的分配的幾個月後,在做這個項目:
=IF(MONTH(E1)>10,AND((DATE(YEAR(E1),11,1+7*1)-WEEKDAY((DATE(YEAR(E1),11,8-1))))<E1,E1<(DATE(YEAR(E1)+1,3,1+14*1)-WEEKDAY((DATE(YEAR(E1)+1,3,8-1))))),AND(DATE(YEAR((DATE(YEAR(E1),11,1+7*1)-WEEKDAY((DATE(YEAR(E1),11,8-1))))-1),MONTH((DATE(YEAR(E1),11,1+7*1)-WEEKDAY((DATE(YEAR(E1),11,8-1))))),DAY((DATE(YEAR(E1),11,1+7*1)-WEEKDAY((DATE(YEAR(E1),11,8-1)))))),E1<(DATE(YEAR(E1),3,1+14*1)-WEEKDAY((DATE(YEAR(E1),3,8-1))))))
看來第二個星期日十一月期間一命嗚呼我現在特別慌張。這是一個有趣的「我很擅長計算機和佈局設計」的交叉點,現在突然跳水的深度比我以前想象的要好。記住這一點,我已經開始感受到我的深度,並且我確信VBA可以輕鬆做到這一點,但我不知道我在做什麼的第一件事,這意味着如果出現任何問題因爲有人不小心刪除了一些東西,我無法修復它。
TL; DR:試圖根據E1中的動態條目打到日期的移動目標。根據關E1的發現在11月第一個星期日,並在次年三月的第二個星期日(或我想當年我們一旦回滾各地一月)
該代碼有點不守規矩。爲了可讀性,你可以把它清理一下嗎? –
解釋似乎懸而未決。我會建議,除了文字評論你想要達到的目標之外,它還會爲你和大部分人提供一個你想要做什麼的視覺表達。如果你有這樣一幅圖像,那就是我現在正在做的事情,但這是我的目標。 – Edper
計算11月份的第一個星期日和3月份的第二個星期日是微不足道的。但是,當你想計算「今年」與「下一年」相比「上一年」的日期時,從你的問題中不清楚。請澄清。 –