簡體   English   中英

從 Excel VBA 中的日期和時間數據中刪除時間

[英]Delete time from Date&Time Data in Excel VBA

image_1

如圖 1 所示,我有一列隨時間而來的原始日期數據。 我想擺脫它,讓它只顯示日期(如圖 2 所示)

image_2 .

我可以通過代碼columns("A").numberformat="mm/dd/yyyy"簡單地實現這一點。 但是,我發現這並沒有真正擺脫時間,而是簡單地隱藏它。 我正在尋找一些 VBA 代碼,它們不僅在視覺上而且實際上消除了時間。 預期的結果應該就像 image_2,但是當我單擊任何單元格並在公式欄中時,也沒有顯示時間。

感謝您對此的任何想法。

使用INT的一種選擇:

Sheet1.Range("A2:A19").Value = Sheet1.Evaluate("=INT(A2:A19)")

或循環:

Sub Test()
    Dim i As Long
    For i = 2 To 19
        With Sheet1.Range("A" & i)
            If IsDate(.Value) Then
                .Value = Int(.Value)
                .NumberFormat = "mm/dd/yyyy"
            End If
        End With
    Next
End Sub

編輯:可能值得找到最后一行:

With Sheet1
    Dim lastRow As Long
    lastRow = .Cells(.Rows.Count, 1).End(xlUp).Row

    .Range("A2:A" & lastRow).Value = .Evaluate("=INT(A2:A" & lastRow & ")")
    .Range("A2:A" & lastRow).NumberFormat = "mm/dd/yyyy"
End With

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM