2009-10-16 9 views

Odpowiedz

32

Jest funkcją dni tygodnia, które odbywają się dnia jako argumentu, i zwraca dzień (1, 2, 3 itd.)

Wartości powrotne:

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

Zakładając weekendy W soboty i niedziele, funkcja będzie wyglądać następująco:

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

Przykład użycia, jak to miało nie zostało wyjaśnione w poście: "IsWeekend (" 11/13/2017 ")' –

6

Lub można użyć tego:

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

lub

MOD(WEEKDAY(cell), 7) < 2 

jako wzoru.

od 1 jest piątek, a 0 jest piątek

2

Wzór konwersji datę dni tygodnia

Selection.FormulaR1C1 = "= TEXT (tygodnia (R7C" + CStr (I) +”, 1), "" ddd "")”

powoduje przywrócenie dni

przykład: - jeśli wejście 02-maj-2013 wówczas wróci Cz -> (czwartek) o zmiennej i oznacza kolejne kolumny

9

Jest to najbardziej bezpośredni sposób, aby ustalić, czy MyDate przypada na weekend:

MsgBox Weekday(MyDate, vbMonday) > 5 

Funkcja Dzień tygodnia() ma opcjonalny 2nd parametr, który mówi to, którego dnia tygodnia na tydzień rozpoczyna się. Dnia tygodnia() zwraca liczbę całkowitą od 1 do 7.

ja poinstruowani, aby rozpocząć w tygodniu w poniedziałek i tak sobota będzie 6 i niedziele będzie 7.

Powiązane problemy