查找自vba特定年份1月1日以来经过的天数

时间:2015-07-07 12:46:29

标签: vba excel-vba vbscript excel

我想找到自我提供的日期起1月1日以来经过的天数。

示例:

Input - 12/01/2015
Output - 12

Input - 02/02/2015
Output - 33

我需要尽可能短的方法来做到这一点。请告诉我vb中是否有任何可用的功能。

3 个答案:

答案 0 :(得分:1)

这应该这样做:(在单元格C4中输入..或用输入替换C4)

=C4-DATE(YEAR(C4)-1,12,31)

(我首先看了DAYS360(),但那个数字OP不需要相同的数学OP,所以那里不是一个好选择)

是的,不需要vba ..如果可以,我只是坚持使用正常的公式;) VBA有时会慢一些,而且难以维护......

答案 1 :(得分:0)

DatePart("y", dt)是一种方式,可能是最短的方式,dt是您的约会对象。

或者,您可以直接在工作表上使用=A1 - DATE(YEAR(A1), 1, 0),其中A1包含日期。

答案 2 :(得分:0)

在VBA中,只需减去日期:

intDays = dt1 - #1/1/2015#    ' Date literals use #

日期在VBA内部存储为Double,其中“days”为整数部分,“time”为小数部分。你总是可以从另一个中减去一个来确定天数的差异。