Board logo

標題: [發問] 當日期和時間在同一個儲存格時~是否可以只讓它顯示日期? [打印本頁]

作者: av8d    時間: 2013-11-7 16:24     標題: 當日期和時間在同一個儲存格時~是否可以只讓它顯示日期?

儲存格格式  yyyy/mm/dd hh:mm
當我輸入2013/11/07 16:30
會正常顯示2013/11/07 16:30
當我輸入2013/11/07
則會顯示2013/11/07 00:00
如何讓00:00不顯示又能正常的使用日期搜尋呢?
作者: av8d    時間: 2013-11-7 16:41

回復 1# av8d


    追問一個問題~
當日期格式為2013"/"##"/"##
如何讓2013自動視為今天
到明年就不用再改成2014"/"##"/"##
作者: ML089    時間: 2013-11-9 23:20

這兩個問題都沒有辦法使用 儲存格格式處理
除非使用VBA Worksheet_Change(ByVal Target As Range) 於資料輸入前將格式變更成你要的
作者: av8d    時間: 2013-11-10 16:46

回復 3# ML089


    看來蠻複雜的樣子~
是否可以舉例說明? 謝謝大大的用心觀看!
作者: ML089    時間: 2013-11-10 21:55

回復 4# av8d


儲存格格式,一般可判斷 + - 0 數字 或 > < 某數之格式設定
要無法判斷 整數或非整數,也無法判斷 2003年或2004年

這些可以用公式來處理,但這就需要轉換到另一格,
若用VBA處理彈性就大了,可以執行巨集一次性重新設定
或用 Worksheet_Change(ByVal Target As Range) 於資料輸入後將格式變更成你要的

Private Sub Worksheet_Change(ByVal Target As Range)
If IsDate(Target.Value) Then
    If Target.Value = Int(Target.Value) Then
        Target.NumberFormatLocal = "yyyy/mm/dd"
    Else
        Target.NumberFormatLocal = "yyyy/m/d h:mm"
    End If
End If
End Sub




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)