计算两个日期之间相差多少天,VBA函数轻松完成

计算两个日期之间相差多少天,VBA函数轻松完成No 1 日期计算在 Excel 中使用相当广泛 而且也十分复杂 不可能一朝学会 但也不是说就学不会 只有仔细去研究 其实用到的日期计算也不多 本节介绍一下 如何获得两个日期之差值 怎么计算

大家好,欢迎来到IT知识分享网。

No.1

日期计算在Excel中使用相当广泛,而且也十分复杂,不可能一朝学会。

但也不是说就学不会,只有仔细去研究,其实用到的日期计算也不多。

本节介绍一下,如何获得两个日期之差值,怎么计算。

计算两个日期之间相差多少天,VBA函数轻松完成

如要计算两个日期相差天数,可使用如下代码:

DateDiff(“d”,”2021-02-01″,”2021-02-11″)

返回一个数值10。这就是两个日期之间相差10天。

其中DateDiff是计算日期相差值的函数,参数”d”代表按”天”进行计算。

其后两个日期,进行计算的两个日期。

具体函数语法和参数如下图所示:

计算两个日期之间相差多少天,VBA函数轻松完成

No.2

DateDiff函数有5个参数,前三个必选,后两个可选。

以下为参数firstdayofweek和firstdayofyear参数可选值。

这两个参数代表从开始计算的起始日期。

计算两个日期之间相差多少天,VBA函数轻松完成

No.3

举几个例子说明一下,如何对两个日期进行计算。

下图为计算两个日期之间有多少天数。

计算两个日期之间相差多少天,VBA函数轻松完成

下图为计算两个日期之间有几个星期。

计算两个日期之间相差多少天,VBA函数轻松完成

下图为计算两个日期之间有几个工作周。

工作日和天是两个概念,工作日返回两个时间段之间的周数。

计算两个日期之间相差多少天,VBA函数轻松完成

No.4

看一下代码如何构建。

计算两个日期之间相差多少天,VBA函数轻松完成

计算日期相差值函数

Private Sub GetDateDiff(DateStyle As String, DateString As String) Dim xObj As Object, T1 As Date, T2 As Date, T3Obj As Object For Each xObj In ActiveSheet.Shapes If xObj.Type = 17 Then Select Case xObj.Name Case "文本框 1" T1 = xObj.TextFrame2.TextRange.Characters.Text Case "文本框 2" T2 = xObj.TextFrame2.TextRange.Characters.Text Case "文本框 3" Set T3Obj = xObj End Select End If Next xObj With T3Obj.TextFrame2.TextRange .Characters.Text = "日期相差:" & _ VBA.Format(DateDiff(DateStyle, T1, T2), "00") & DateString '计算日期差 .Characters(1, 5).Font.Size = 35 .Characters(6, 2).Font.Size = 50 End With End Sub

上面函数功能是实现任何两个文本框内的日期值之间的相差数,这里无论是天,年或周,都可以调用此函数。

调用方法:

Private Sub CommandButton1_Click() Dim NowDate As Date NowDate = Application.InputBox _ ("设置日期", "输入日期", _ VBA.Format(DateAdd("d", 5, Date) _ , "yyyy-mm-dd"), , , , , 1) If Not IsDate(NowDate) Then Exit Sub SetDate "文本框 2", NowDate GetDateDiff "d", "天"'调用计算函数 End Sub

上面代码中GetDateDiff “d”,”天”这一行就是调用上面的函数。

  • “d”代表计算天数。
  • “w”代表计算工作日。
  • “ww”代表计算周数。
  • “m”代表计算月数。
  • “yyy”代表计算年数。
  • 日期计算是个很重要的基本操作,如何熟练掌握,对各类数据计算有很大帮助作用。

    欢迎关注、收藏。

    免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/169622.html

    (0)
    上一篇 2025-02-08 08:26
    下一篇 2025-02-08 08:33

    相关推荐

    发表回复

    您的邮箱地址不会被公开。 必填项已用 * 标注

    关注微信