|
?在日常工作中,經(jīng)常會(huì)遇到需要實(shí)時(shí)記錄數(shù)據(jù)錄入的日期和時(shí)間問題。有朋友會(huì)說了,用快捷鍵啊,按Ctrl+;(分號)可以返回當(dāng)前的系統(tǒng)日期,按Ctrl+Shift+;(分號)可以返回當(dāng)前的系統(tǒng)時(shí)間。但是如果需要同時(shí)返回日期和時(shí)間又該怎么處理呢? 對于懂得VBA的朋友,這個(gè)問題當(dāng)然不在話下,但相對于V盲的表親來說,處理這個(gè)問題就有點(diǎn)棘手了。 以下圖為例,在A列單元格輸入內(nèi)容后,B列就會(huì)自動(dòng)的顯示出數(shù)據(jù)錄入時(shí)的系統(tǒng)時(shí)間。 接下來,咱們就一起學(xué)習(xí)一下如何實(shí)現(xiàn)這樣的目的。 在B2單元格輸入以下公式后向下復(fù)制。 =IF(A2='','',IF(B2='',NOW(),B2)) 這時(shí)候,如果馬上在A2單元格輸入內(nèi)容,就會(huì)彈出循環(huán)引用的警告: 還需要咱們在Excel選項(xiàng)中設(shè)置一下。 先單擊【確定】,關(guān)閉警告對話框。依次單擊【文件】,【選項(xiàng)】,彈出【Excel選項(xiàng)】對話框。單擊【公式】選項(xiàng)卡,勾選“啟用迭代計(jì)算”,單擊【確定】關(guān)閉【Excel選項(xiàng)】對話框。 這時(shí)候,只要在A列輸入內(nèi)容,B列就會(huì)記錄下數(shù)據(jù)錄入時(shí)的系統(tǒng)時(shí)間。 如果您的工作表中顯示的是類似41672.55這樣的怪怪的數(shù)字,還需要設(shè)置一下單元格格式。 設(shè)置單元格格式的方法是:按住Ctrl+1,在彈出的【設(shè)置單元格格式】對話框中單擊【自定義】選項(xiàng)卡,在類型文本框中輸入yyyy-m-d h:mm:ss 咱們再簡單說一下公式=IF(A2='','',IF(B2='',NOW(),B2))的意思。 NOW()函數(shù)返回日期時(shí)間格式的當(dāng)前日期和時(shí)間。IF(A2='',''先用IF函數(shù)判斷A2是否為空值,如果A2是空值返回空白””,否則執(zhí)行下一段公式IF(B2='',NOW(),B2),這段公式在A2不為空的情況下繼續(xù)判斷B2是否為空值,條件成立則返回當(dāng)前的系統(tǒng)時(shí)間。如果A2和B2都不為空,則保留B2的原有的值。該公式對公式所在單元格進(jìn)行了引用判斷,所以要開啟迭代計(jì)算。
這個(gè)方法非常簡單,也便于操作,但是有一個(gè)缺點(diǎn)。如果對A列已經(jīng)輸入的內(nèi)容進(jìn)行修改,B列仍然會(huì)保留原有的內(nèi)容,并不能實(shí)時(shí)的更新最后一次修改內(nèi)容的時(shí)間。
如果將上面這個(gè)公式寫成 =IF(A2='','',IF(A2=CELL('contents'),NOW(),B2)) 就可以有效的解決這個(gè)問題了。 公式中CELL('contents')部分可以獲取最后編輯的單元格內(nèi)容,利用這個(gè)特點(diǎn),只要A2單元格內(nèi)容發(fā)生變化,公式就會(huì)返回當(dāng)前的系統(tǒng)日期時(shí)間了。
除了上述的方法以外,使用數(shù)據(jù)有效性也能夠便捷的調(diào)用當(dāng)前的系統(tǒng)日期和時(shí)間,能夠滿足一般情況下的時(shí)間記錄需要。 實(shí)現(xiàn)這樣的效果非常簡單,并且無需設(shè)置迭代計(jì)算。首先在任意單元格寫入公式=NOW(),本例選擇F1單元格。 選中B2:B10單元格區(qū)域,依次單擊【數(shù)據(jù)】【數(shù)據(jù)有效性】,在彈出的【數(shù)據(jù)有效性】對話框中,序列來源選擇=$F$1,單擊【確定】完成設(shè)置。 設(shè)置完成后,就可以在B列單元格區(qū)域通過下拉列表選擇錄入日期時(shí)間了。
|
|
|