簡體   English   中英

Excel公式可精確獲取月份中兩個日期之間的天數

[英]Excel formula to get number of days between two dates in months with precision

如何獲得具有兩個月精度的日期(以月為單位)的公式是多少?

例如:這兩個日期介於01-01-2017和14-02-2017之間的天數為45天。 (31天+ 14天-包括這兩者)所以我期望1個月14天作為輸出。 因此格式應為1.14(1個月14天)

編輯:沒有一個月30天的假設。 我期待確切的日歷差異。

嘗試這個:

=DATEDIF(A1,B1,"m") & "." & B1-DATE(YEAR(B1),MONTH(B1)-IF(DAY(A1)>DAY(B1),1,0),DAY(A1))+1

在此處輸入圖片說明

對於A1B1中的數據,在C1中輸入:

=DATEDIF(A1,B1,"m") & "." & DATEDIF(A1,B1,"md")

在此處輸入圖片說明

編輯#1:

該公式給出一個文本值。 要轉換為數字並保留格式,請選擇C列中包含該公式的單元格,然后運行以下簡短宏:

Sub KonverToNumber()
    Dim r As Range, L As Long, T As String
    Dim rr As Range

    For Each r In Selection
        Set rr = r.Offset(0, 1)
        T = r.Text
        v = CDbl(T)
        L = Len(Split(T, ".")(1))
        If L = 2 Then
           rr.NumberFormat = "0.00"
        Else
            rr.NumberFormat = "0.0"
        End If
        rr.Value = v
    Next r
End Sub

結果將在D列中

在此處輸入圖片說明

如果要在一個單元格中顯示“年,月,日”,則為公式。

= DATEDIF(D17,E17,"y") & " Years, " & 
  DATEDIF(D17,E17,"ym") & " Months, " &
  DATEDIF(D17,E17,"md") & " Days"

如果我對您的理解正確,那么我一直在使用此方法來做到這一點。 假設以下內容:
D17是開始日期
E17是結束日期

如果您使用以下公式:
= DATEDIF(D17,E17,“ y”)&“年,”&DATEDIF(D17,E17),“ ym”)&“月,”&E17-DATE(YEAR(E17),MONTH(E17),1) & “天”

要獲得所需的確切格式,您可能需要將公式編輯為如下所示:
= DATEDIF(D17,E17),“ ym”)&“。 &E17-DATE(YEAR(E17),MONTH(E17),1)

希望這對您和我都一樣有效。

暫無
暫無

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

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