爲什麼Project中任務的完成時間比你想的晚一天?

https://www.office26.com/project/18995.html

 

Project不是隨便摸索兩下就能掌握的,很多同學在使用了相當長一段時間後,仍然不能算入門。舉個例子,絕大多數人用Project是用來做進度計劃的,資源和成本可能都很少涉及。咱就說Project進度計劃的功能吧,我覺得很多所謂“資深”用戶可能連它的基本邏輯都未必能搞明白。

比如說,很多人做了計劃以後,可能會發現一個奇怪的問題,就是任務的完成時間總是比自己算出來的晚一天。咱們把問題簡化一下,比如創建了一個任務A(沒有設置過任何前置任務),工期明明是1天,完成時間卻比開始時間晚一天,如下圖所示,開始時間在星期一,而完成時間在星期二。或者工期是2天如任務B,完成時間卻是在第三天,開始時間是星期一,完成時間卻是星期三。

爲什麼Project軟件中任務的完成時間比你想的晚一天? 

你有沒有碰到過這個問題呢?

有些同學遇到過,有些同學是遇到了但是自己沒發現。

好,現在告訴大家這些坑是誰挖的,應該怎麼避免。

原因1:在桌面鼠標右鍵新建Project文檔生成的文件

很多人習慣在桌面上通過鼠標右鍵新建Office文件,這種方式本身無可厚非,但是用在Project軟件上就不行了,爲什麼呢?這會暴露Project軟件的一個bug。

通過這種方式建立的新Project文件,任務的開始時間不是默認的早上8:00,而是早上9:00(也許程序員不想那麼早起牀吧)。怎麼驗證這種說法呢?可以點擊【文件】-【選項】-【常規】-【日期格式】,在裏面選擇一個日期+幾點幾分的形式,比如2009年1月28日 12:33這種,如下圖所示,點擊【確定】。

爲什麼Project軟件中任務的完成時間比你想的晚一天? 

然後回到Project計劃,再看原來的計劃,如下圖所示。任務A和任務B的開始時間都是9:00,而不是軟件默認的工作時間早上8:00。

爲什麼Project軟件中任務的完成時間比你想的晚一天? 

那麼,爲什麼任務A和B是早上9:00開始就會導致完成時間比自己算的晚一天呢?這就牽扯到Project一個非常重要、非常重要、非常重要的計算邏輯。

幾乎所有用戶都以爲Project是按照工期的天數來計算進度的,既然在工期裏輸入了1天,那麼這個任務就佔用1天。實際上這種樸素的理解是不對的。Project在進度計算時,底層的計算邏輯是先將Project的工期換算成對應的小時數,然後根據小時數計算任務的完成時間,不論工期單位是天、周、還是月,原理都是如此。

默認情況下,工期1天對應8個小時。注意這個對應關係和日曆設置無關,而是和【選項】中【每日工時】數有關,如下圖。

爲什麼Project軟件中任務的完成時間比你想的晚一天? 

好了,對於之前的例子,任務A是從早上9點開始,那麼它的工期是1天(8個小時),那麼1月21日星期一上午它工作3個小時(9:00-12:00),下午工作4個小時(13:00-17:00),還差一個小時的工作量怎麼辦呢?就順延到了第二天,也就是8:00-9:00再工作一個小時,所以任務A的完成時間就成了1月22日星期二上午9:00了。同理,任務B的完成時間就成了1月23日星期三上午9:00。

這樣就造成了,計算出來的完成時間總是會比你想的晚一天。

通過在桌面鼠標右鍵新建的Project文檔,任務的開始時間是從早上9:00開始算的,而不是默認的早上8:00。而這個bug在Project 2016之前的版本或者Project 2016部分版本上都存在。所以,看了這篇文章,以後不要再通過鼠標右鍵新建Project文檔了,直接點擊軟件圖標打開空白項目最穩妥,以後養成習慣吧。

這個問題本來是程序員挖的坑,不幸被你踩上了。而下面要說的第二種情形,則是由於不懂Project軟件的原理自己犯的錯了。

原因2:自己手動修改了【選項】中的每日工時數,並且和日曆的工作時間不匹配

在前文給大家講了,並且講了三遍,Project進度計算的底層邏輯是先將工期換算成對應的小時數,以此來計算完成時間。而這個工期與小時數之間的對應關係,與日曆無關,而是與【選項】設置有關。

假如你認爲自己的公司每天上班9個小時,於是就擅自在選項中把【每日工時】改成了9個小時,如下圖所示。

爲什麼Project軟件中任務的完成時間比你想的晚一天? 

但是與此同時,你並沒有修改日曆中的默認工作時間(上午8:00-12:00,下午13:00-17:00),那麼會出現什麼情況呢?

我們在一個空白的項目中試驗一下,注意,不要通過鼠標右鍵新建Project文檔,直接點擊軟件圖標進入一個空白項目。

隨便創建一個任務A,工期爲1天,再創建一個任務B,工期爲2天,如下圖所示。

爲什麼Project軟件中任務的完成時間比你想的晚一天? 

我們看,任務A的工期是1天,但是它的完成時間卻是在第二天。任務B的工期是2天,但是它的完成時間卻是在第三天。這是什麼原因呢?

這就是因爲Project選項中的每日工時數與日曆中的工作時間不匹配造成的。

由於你在選項中手動將每日工時改成9個小時,而日曆中的工作時間沒有相應修改,仍然是8個小時(上午8:00-12:00、下午13:00-17:00),所以任務A的工期爲1天(也就是按照9個小時計算),所以它在1月21日星期一完成了8個小時,還需要在第二天再完成1個小時的工作量(8:00-9:00)。所以,在上圖中能看到,任務A的完成時間實際上是第二天1月22日的上午9點。這樣它的完成時間就比你想的多一天了。

再來看任務B,工期是2天(也就是2*9=18個小時),它在1月21日和1月22日每天各完成8個小時工作量後,還需要再完成2個小時工作量才能湊夠18個小時,所以它在第三天還工作了2個小時(8:00-10:00),於是完成時間就落在了第三天1月23日10:00。

所以,大家看到了嗎?當選項中的每日工作日與日曆中的工作時間不匹配的時候,就會出現Project計算出來的完成時間和你想象的不一致。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章