Excel是怎樣表示日期和時間的
Excel是怎樣表示日期和時間的
Excel是怎樣表示日期和時間的?我們看到的不一定是真實的!通常,我們在單元格中按慣用的日期格式輸入數(shù)據(jù)時,Excel會自動將其轉(zhuǎn)換成日期。下圖是我在單元格中輸入日期和時間并設置完格式后的樣子:
圖1
這只是我們看到的樣子,實際上Excel是按下圖所示的數(shù)字來存儲這個日期和時間的:
圖2
也就是說,在Excel中,日期和時間都是一個數(shù)字,日期為整數(shù)部分,時間為小數(shù)部分。日期是一個序列號,表示自1900年1月1日以來的天數(shù)。序號1對應1900年1月1日,序號2對應1900年1月2日,依次類推。時間表示為一個單位為24小時的小數(shù),其范圍為0~1。起始點在午夜,其序號為0,正午的時間序號為0.5。上圖中可以看出,2017年8月26日的序號為42973,上午9時1分表示為.38。
在Excel中,時間的最小單位是千分之一秒,時間序列號表示為23:59:59.999。
一分鐘約等于0.00069444,即1/(24*60)。
一秒鐘約等于0.00001157,即1/(24*60*60)。
1900年之前的日期怎么辦
正如前文所,Excel是以1900年1月1日開始的序號來存儲日期的,如果輸入1900年1月1日之前的日期,Excel將會以文本的形成存儲,因此不能對其進行格式、計算等操作。
在單元格中輸入日期和時間
只要遵循下列規(guī)則,Excel都會自動將輸入視為日期和時間。
使用斜杠(/)或者連字符(-)連接年月日
使用冒號(:)連接時分秒
輸入××年×月×日或×時×分
同時輸入日期和時間時,在日期和時間之間使用空格分開
查找日期
如果只是按單元格中顯示的內(nèi)容來查找日期,有時候會找不到數(shù)據(jù),如下圖所示。
圖3
必須按照公式欄中顯示的格式輸入要查找的內(nèi)容,才能正確找到單元格,如下圖所示。
圖4
日期計算
由于Excel以數(shù)字序號存儲日期和時間,因此它們可以使用公式進行加減運算。下圖所示的公式計算2017年已經(jīng)過了多少天:
圖5
計算累計的時間值
由于Excel表示時間的方式,當我們將時間值累加起來時,如果超過24小時,將自動增加1天。此時,可以設置單元格數(shù)字格式為:
[hh]:mm
如下圖所示:
圖6
Excel的一些處理日期和時間的函數(shù)及示例
NOW()函數(shù)獲取當前的日期和時間。
TODAY()函數(shù)獲取當前的日期。
這兩個函數(shù)都會在用戶編輯公式、輸入另一個公式、工作表重新計算或者打開工作簿時更新為最新日期或時間,因此它們的值是動態(tài)的。
DATE()函數(shù)返回日期。如果單元格A1中的文本是20170829,要將其轉(zhuǎn)換成日期,則可以使用下面的公式:
=DATE(LEFT(A1,4),MID(A1,5,2),RIGHT(A1,2))
DATE()函數(shù)會自動調(diào)整參數(shù)為正確的日期,下面的公式:
=DATE(2017,7,32)
返回2017-8-1。
TIME()函數(shù)返回時間。
DATEVALUE函數(shù)和TIMEVALUE()函數(shù)返回代表日期和時間的序列號和小數(shù),其參數(shù)應該是文本形式的日期和時間,否則會得到#VALUE!錯誤。
YEAR()函數(shù)、MONTH()函數(shù)和DAY()函數(shù)分別提取日期中的年月日。
HOUR()函數(shù)、MINUTE()函數(shù)和SECOND()函數(shù)分別返回時間中的時分秒。注意,要在指定的時間基礎上增加時分秒,需要進行相應的換算。換算基準為:1小時表示為1/24,1分鐘為1/(24*60),1秒種為1/(24*60*60)。因此,如果要在現(xiàn)在的時間上加5小時30分50秒,則應加上5*(1/24)+30*(1/(24*60))+50*(1/(24*60*60))。
NETWORKDAYS()函數(shù)可以求出指定項目開始日期、結(jié)束日期、假期時的工作日天數(shù)。
WORKDAY()函數(shù)可以求出從某日期開始,經(jīng)過指定天數(shù)并扣除假期后的結(jié)束日期,也可以獲取某個日期是星期幾。
圖7
DAYS()函數(shù)返回兩個日期之間的天數(shù)。
WEEKNUM()函數(shù)返回指定的日期在所給年份中的周數(shù)。
EDATE()函數(shù)返回從起始日期開始k個月前或后的日期。
EOMONTH()函數(shù)返回起始日期之前或之后k個月的月底日期。
DATEDIF()函數(shù)以指定的格式單位返回兩個日期之差。
下面的公式返回任何當前月份的最后一天:
=DATE(YEAR(C1),MONTH(C1)+1,0)
雖然月份的最后一天會是28、29、30或31,但任何月份的最后一天都是下一月份的前一天。單元格C1中包含要返回當前月份最后一天的日期。
下面的公式計算準確的年齡:
=YEAR(NOW())-YEAR(Birthday)-(DATE(YEAR(NOW()),MONTH(Birthday),DAY(Birthday))>NOW())
公式的關鍵點是判斷當前日期是否大于生日,若還沒有過生日,則減1,否則保持不變。公式中的Birthday為生日。
下面的公式計算準確的時間差:
=IF(EndTime 其中,StartTime為開始時間,EndTime為結(jié)束時間。當工作開始于前天晚上,結(jié)束于當天上午時,上述公式能計算準確的時間差。
版權聲明:本文內(nèi)容由網(wǎng)絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權內(nèi)容。
版權聲明:本文內(nèi)容由網(wǎng)絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權內(nèi)容。