Guida di LibreOffice 25.2
Questa funzione restituisce il numero corrispondente al giorno della settimana rappresentato da un numero di data seriale generato dalle funzioni DateSerial o DateValue.
Questa pagina della Guida descrive la funzione WeekDay utilizzata negli script Basic. Se siete interessati alla funzione WeekDay utilizzata in LibreOffice Calc, consultate questa pagina della guida.
  WeekDay (SerialDate, [FirstDayOfWeek])
DataSeriale: espressione numerica intera contenente il numero seriale della data utilizzato per calcolare il giorno della settimana.
FirstDayOfWeek: (PrimoGiornoSettimana) valore intero che indica quale giorno feriale deve essere considerato come il primo giorno della settimana. Il valore predefinito è 0, il che significa che le impostazioni locali del sistema vengono utilizzate per determinare il primo giorno della settimana.
Il parametro FirstDayOfWeek accetta valori compresi tra 0 e 7. La tabella seguente descrive il significato di ogni valore possibile:
| Valore | Costante VBA | Descrizione | 
|---|---|---|
| 0 | vbUseSystemDayOfWeek | Utilizzare le impostazioni locali del sistema | 
| 1 | vbSunday | Domenica (predefinito) | 
| 2 | vbMonday | Lunedì | 
| 3 | vbTuesday | Martedì | 
| 4 | vbWednesday | Mercoledì | 
| 5 | vbThursday | Giovedì | 
| 6 | vbFriday | Venerdì | 
| 7 | vbSaturday | Sabato | 
Le costanti VBA sopra elencate sono disponibili solo se è stato attivato il supporto VBA. Per maggiori informazioni consultate la pagina Istruzione VBASupport della guida.
Integer
Nell'esempio seguente viene utilizzata la funzione Now() per determinare il giorno della settimana in corso.
Sub ExampleWeekDay
    Dim sDay As String
    ' Restituisce e visualizza il giorno della settimana
    Select Case WeekDay( Now )
            Caso 1: sDay="Domenica"
            Caso 2: sDay="Lunedì"
            Caso 3: sDay="Martedì"
            Caso 4: sDay="Mercoledì"
            Caso 5: sDay="Giovedì"
            Caso 6: sDay="Venerdì"
            Caso 7: sDay="Sabato"
    End Select
    MsgBox "" + sDay,64,"Oggi è"
End Sub
L'esempio seguente illustra l'uso del parametro FirstDayOfWeek, ipotizzando che martedì sia considerato il primo giorno della settimana.
  Dim someDay As Long
  ' La data del 1° gennaio 2021 era un venerdì
  someDay = DateSerial(2021, 01, 01)
  ' Stampa "6" ipotizzando che domenica sia il primo giorno della settimana
  MsgBox WeekDay(someDay)
  ' Stampa "4" ipotizzando che martedì sia il primo giorno della settimana
  MsgBox WeekDay(someDay, 3)