我希望每周都能获得星期一的日期。我使用该日期打开每周一创建的文件夹,并根据日期命名。我尝试使用weekday()函数。但我不知道该怎么办。谢谢您的帮助!这是我试过的,它的工作原理。但我想知道是否有更有效的方法来做到这一点?
Sub test()
Dim myday As Integer
Dim mydate As Date
mydate = Date
myday = Weekday(Date, vbMonday)
If myday = 1 Then
mydate = Date
ElseIf myday = 2 Then
mydate = DateAdd("d", -1, Date)
ElseIf myday = 3 Then
mydate = DateAdd("d", -2, Date)
ElseIf myday = 4 Then
mydate = DateAdd("d", -3, Date)
ElseIf myday = 5 Then
mydate = DateAdd("d", -4, Date)
End If
End Sub
答案 0 :(得分:3)
如果DT是任何日期,如果你想在DT是星期一时返回相同的日期,那么,使用VBA:
Function FirstMonday(DT As Date) As Date
FirstMonday = DT - Weekday(DT, vbMonday) + 1
End Function
或者,在工作表上,使用A1中的日期:
=A1+1-WEEKDAY(A1-1)
答案 1 :(得分:0)
在 A1 中输入:
2014年1月6日
在 A2 中输入:
=A1 + 7
并复制