Nápověda LibreOffice 25.2
Vrátí hodnotu určující den v týdnu odpovídající datu v číselné podobě (vytvořenému funkcí DateSerial nebo DateValue).
Tato stránka popisuje funkci WeekDay používanou ve skriptech Basicu. Podrobnosti o funkci WeekDay používané v aplikaci LibreOffice Calc naleznete na této stránce nápovědy.
  WeekDay (SerialDate, [FirstDayOfWeek])
SerialDate: Celočíselný výraz, který obsahuje datum v číselné podobě, ze kterého se určí den v týdnu.
FirstDayOfWeek: Celočíselná hodnota určující, který den se má považovat za první den v týdnu. Výchozí hodnota je 0, která znamená, že se k určení prvního dne v týdnu použije národní prostředí systému.
Do parametru FirstDayOfWeek je možné zadat hodnoty od 0 do 7. Význam všech možných hodnot uvádí následující tabulka:
| Hodnota | Konstanta VBA | Popis | 
|---|---|---|
| 0 | vbUseSystemDayOfWeek | Použití národního prostředí systému | 
| 1 | vbSunday | Neděle (výchozí) | 
| 2 | vbMonday | Pondělí | 
| 3 | vbTuesday | Úterý | 
| 4 | vbWednesday | Středa | 
| 5 | vbThursday | Čtvrtek | 
| 6 | vbFriday | Pátek | 
| 7 | vbSaturday | Sobota | 
Tyto konstanty VBA jsou k dispozici pouze tehdy, je-li povolena podpora VBA. Podrobnosti naleznete na stránce Příkaz VBASupport.
Celé číslo
V následujícím příkladu se pro určení aktuálního dne v týdnu používá funkce Now().
Sub ExampleWeekDay
    Dim sDay As String
    ' Vrátí a zobrazí den v týdnu
    Select Case WeekDay( Now )
            Case 1: sDay="Neděle"
            Case 2: sDay="Pondělí"
            Case 3: sDay="Úterý"
            Case 4: sDay="Středa"
            Case 5: sDay="Čtvrtek"
            Case 6: sDay="Pátek"
            Case 7: sDay="Sobota"
    End Select
    MsgBox "" + sDay,64,"Dnes je "
End Sub
Následující příklad ukazuje použití parametru FirstDayOfWeek pro stanovení toho, že prvním dnem v týdnu je úterý.
  Dim someDay As Long
  ' 1. ledna 2021 byl pátek
  someDay = DateSerial(2021, 01, 01)
  ' Vypíše "6", protože se předpokládá, že prvním dnem v týdnu je neděle
  MsgBox WeekDay(someDay)
  ' Vypíše "4", protože se předpokládá, že prvním dnem v týdnu je úterý
  MsgBox WeekDay(someDay, 3)