A função `WeekdayName` no VBA é usada para obter o nome do dia da semana correspondente a um determinado número. Essa função é útil quando você precisa converter um número de dia da semana em seu nome correspondente, como “Domingo”, “Segunda-feira”, etc.
Aqui está a sintaxe básica da função `WeekdayName`:
WeekdayName(weekday, [abbreviate], [firstdayofweek])
- `weekday`: Este argumento é obrigatório e representa o número do dia da semana (um valor entre 1 e 7) para o qual você deseja obter o nome.
- `abbreviate`: Este argumento opcional é um valor booleano que indica se o nome do dia da semana deve ser abreviado. Use `True` para uma forma abreviada (como “Seg” para “Segunda-feira”) ou `False` (ou omita) para o nome completo.
- `firstdayofweek`: Este argumento opcional é uma constante que indica qual dia é considerado o primeiro dia da semana. Se omitido, será usado o valor do sistema. As constantes disponíveis incluem:
- `vbUseSystemDayOfWeek` (0): Usa a configuração do sistema
- `vbSunday` (1): Domingo
- `vbMonday` (2): Segunda-feira
- `vbTuesday` (3): Terça-feira
- `vbWednesday` (4): Quarta-feira
- `vbThursday` (5): Quinta-feira
- `vbFriday` (6): Sexta-feira
- `vbSaturday` (7): Sábado
Aqui estão alguns exemplos de como usar a função `WeekdayName`:
Sub ExampleWeekdayName()
Dim dayName As String
' Obtem o nome completo do dia da semana correspondente ao número 3.
dayName = WeekdayName(3)
Debug.Print dayName ' Output: "Terça-feira" em locais configurados para português
' Obtem o nome abreviado do dia da semana correspondente ao número 3.
dayName = WeekdayName(3, True)
Debug.Print dayName ' Output: "Ter" em locais configurados para português
' Considera segunda-feira como o primeiro dia da semana
dayName = WeekdayName(1, False, vbMonday)
Debug.Print dayName ' Output: "Segunda-feira"
End Sub
Certifique-se de ajustar as configurações de localidade do VBA se necessário, pois o idioma dos nomes de dias pode variar dependendo da localização.