2009-10-16 39 views

Trả lời

32

Có một hàm Weekday mà phải mất một ngày như một tham số và trả về ngày (1, 2, 3, vv)

Các giá trị trả về là:

vbSunday (1) 
vbMonday (2) 
vbTuesday (3) 
vbWednesday (4) 
vbThursday (5) 
vbFriday (6) 
vbSaturday (7) 

Giả sử rằng cuối tuần là Bảy và Chủ Nhật, hàm sẽ trông như thế này:

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 
+0

Ví dụ về việc sử dụng, vì đây là không rõ ràng trong bài viết: 'IsWeekend (" 11/13/2017 ")' –

6

Hoặc, bạn có thể sử dụng này:

OR(MOD(WEEKDAY(cell), 7)=0, MOD(WEEKDAY(cell), 7)=1) 

hoặc

MOD(WEEKDAY(cell), 7) < 2 

như một công thức.

từ 1 là chủ nhật và 0 là thứ bảy

2

Formula cho ngày chuyển đổi sang các ngày trong tuần

Selection.FormulaR1C1 = "= TEXT (WEEKDAY (R7C" + CStr (i) +", 1), "" ddd "")"

này sẽ trở lại ngày

ví dụ như: - nếu đầu vào là 02-may-2013 sau đó nó sẽ trở lại Thu -> (Thứ Năm) đây biến i đại diện cho cột khác

9

Đây là cách trực tiếp nhất để xác định xem MyDate rơi vào cuối tuần:

MsgBox Weekday(MyDate, vbMonday) > 5 

các ngày trong tuần() chức năng có một tham số thứ 2 tùy chọn mà nói với nó mà ngày trong tuần tuần bắt đầu từ ngày. Các ngày trong tuần() hàm trả về một số nguyên từ 1 đến 7.

Tôi đã chỉ thị cho nó để bắt đầu tuần vào thứ hai và do đó thứ bảy sẽ là 6 và chủ nhật sẽ là 7.

Các vấn đề liên quan