如何确定日期是否在周末?

JR.*_*JR. 21 excel vba excel-vba

给定日期作为输入,我如何确定当天是否属于周末?

Law*_*ley 36

有一个Weekday函数,它以Date作为参数并返回日期(1,2,3等)

返回值为:

vbSunday (1)  
vbMonday (2)  
vbTuesday (3)  
vbWednesday (4)  
vbThursday (5)  
vbFriday (6)  
vbSaturday (7)  
Run Code Online (Sandbox Code Playgroud)

假设周末是周六和周日,函数将如下所示:

Public Function IsWeekend(InputDate As Date) As Boolean
    Select Case Weekday(InputDate)
        Case vbSaturday, vbSunday
            IsWeekend = True
        Case Else
            IsWeekend = False
    End Select
End Function
Run Code Online (Sandbox Code Playgroud)


Exc*_*ero 11

这是确定MyDate周末是否下降的最直接方式:

MsgBox Weekday(MyDate, vbMonday) > 5
Run Code Online (Sandbox Code Playgroud)

Weekday()函数有一个可选的第二个参数,告诉它一周的哪一天开始.Weekday()函数返回1到7之间的整数.

我已经指示它在星期一开始这一周,所以星期六将是6,SUNDAY将是7.


小智 6

或者,您可以使用此:

OR(MOD(WEEKDAY(cell), 7)=0, MOD(WEEKDAY(cell), 7)=1)
Run Code Online (Sandbox Code Playgroud)

要么

MOD(WEEKDAY(cell), 7) < 2
Run Code Online (Sandbox Code Playgroud)

作为一个公式.

因为1是星期日,0是星期六