查找周一至周日工作周内的日期

时间:2015-03-30 13:50:58

标签: excel excel-vba excel-2010 vba

我目前有一个程序可以在表格中查找日期,并将它们与日期范围进行比较,并将其用于其他内容。我用了一个星期进行比较的人一直在说Date + 7,但我想从周一到周日采取当周的日期,并将其作为日期范围。

我认为现在的方法是使用当前WeekNum并从那里找到星期一和星期日的日期,但老实说我不知道​​如何从VBA开始这样做。如果有人指示我完成这项工作,或者我甚至以正确的方式思考这一点,我将不胜感激。

2 个答案:

答案 0 :(得分:0)

您可以使用工作日公式来确定一周的开始和结束。公式看起来如此:

startWeek = Date - (Weekday(Date, vbMonday) - 1)

endWeek = Date + (7 - Weekday(Date, vbMonday))

让我知道这是否有效

答案 1 :(得分:0)

这是获得星期一和星期一的简单方法。在本周的星期日之后:

Sub getadate()
    Dim N As Long

    N = Weekday(Date)
    d1 = Date - N + 2
    d2 = d1 + 6
    MsgBox d1 & vbCrLf & d2
End Sub