Devolve uma Variante (Número Inteiro) contendo a parte especificada de uma determinada data.
| Aviso Existe um problema com a utilização desta função. A última segunda-feira em alguns anos de calendário pode ser devolvida como semana 53 quando deve ser a semana 1. Para obter mais informações e uma solução alternativa, consulte As funções Format ou DatePart podem devolver o número da semana errada da última segunda-feira do ano. |
|---|
Sintaxe
DatePart(interval, date [, firstdayofweek] [, firstweekofyear] )
A sintaxe da função DatePart tem os seguintes argumentos:
| Argumento | Descrição |
|---|---|
| interval | Obrigatório. Expressão de cadeia que corresponde ao intervalo de tempo que pretende devolver. |
| date | Obrigatório. Valor da Variant (Date) que pretende avaliar. |
| firstdayofweek | Opcional. Uma constante que especifica o primeiro dia da semana. Se não for especificado, domingo é considerado o primeiro dia. |
| firstweekofyear | Opcional. Uma constante que especifica a primeira semana do ano. Se não for especificada, pressupõe-se que a semana de 1 de janeiro é a primeira semana do ano. |
Definições
O argumento de intervalo tem estas definições:
| Definição | Descrição |
|---|---|
| aaaa | Ano |
| t | Trimestre |
| m | Mês |
| a | Dia do ano |
| d | Dia |
| s | Dia útil |
| ss | Semana |
| h | Hora |
| n | Minuto |
| s | Segundo |
O argumento firstdayofweek tem as seguintes definições:
| Constante | Valor | Descrição |
|---|---|---|
| vbUseSystem | 0 | Utilizar a definição NLS API. |
| vbSunday | 1 | Domingo (predefinição) |
| 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 |
O argumento firstweekofyear tem as seguintes definições:
| Constante | Valor | Descrição |
|---|---|---|
| vbUseSystem | 0 | Utilizar a definição NLS API. |
| vbFirstJan1 | 1 | Começar com a semana de 1 de Janeiro (predefinição). |
| vbFirstFourDays | 2 | Começar com a primeira semana que tenha, pelo menos, quatro dias no ano novo. |
| vbFirstFullWeek | 3 | Começar com a primeira semana completa do ano. |
Observações
Pode utilizar a função DatePart para avaliar uma data e devolver um intervalo específico de tempo. Por exemplo, pode utilizar DatePart para calcular o dia da semana ou a hora atual.
O primeiro argumentodayofweek afeta os cálculos que utilizam os símbolos de intervalo "w" e "ww".
Se date for um literal de data, o ano especificado torna-se uma parte permanente dessa data. No entanto, se date estiver entre aspas (" ") e omitir o ano, o ano atual é inserido no código sempre que a expressão date for avaliada. Isto permite escrever código que pode ser utilizado em anos diferentes.
Nota
Para date, se a definição da propriedade do Calendário for Gregoriano, a data fornecida tem de ser Gregoriana. Se o calendário for Hijri, a data fornecida tem de ser Hijri.
A parte da data devolvida está em unidades de período de tempo do calendário Árabe atual. Por exemplo, se o calendário atual for Hijri e a parte da data a devolver for o ano, o valor do ano é um ano Hijri.
Exemplos de consulta
| Expressão | Resultados |
|---|---|
| SELECT DatePart("yyyy",[DateofSale]) AS NewDate FROM ProductSales; | Devolve o "Ano" dos valores de data do campo "DateofSale". |
| SELECT DatePart("q",[DateofSale]) AS NewDate FROM ProductSales; | Devolve o "Trimestre" (com base no ano do calender) dos valores de data do campo "DateofSale". |
| SELECT DatePart("y",[DateofSale]) AS NewDate FROM ProductSales; | Devolve o "Dia do Ano" (1 a 365) dos valores de data do campo "DateofSale". |
| SELECT DatePart("d",[DateofSale]) AS NewDate FROM ProductSales; | Devolve o "Dia" dos valores de data do campo "DateofSale". |
| SELECT DatePart("w",[DateofSale]) AS NewDate FROM ProductSales; | Devolve o "Dia da Semana" (de 1 a 7 em que 1 representa domingo) dos valores de data do campo "DateofSale". |
| SELECT DatePart("ww",[DateofSale]) AS NewDate FROM ProductSales; | Devolve o "Número da semana" (de 1 a 52) dos valores de data do campo "DateofSale". |
| SELECT DatePart("h",[DateTime]) AS NewDate FROM ProductSales; | Devolve a "Hora" dos valores de data do campo "DateTime". |
| SELECT DatePart("n",[DateTime]) AS NewDate FROM ProductSales; | Devolve os "Minutos" dos valores de data do campo "DateTime". |
| SELECT DatePart("s",[DateTime]) AS NewDate FROM ProductSales; | Devolve os "segundos" dos valores de data do campo "DateTime". |
Exemplo de VBA
Nota
Os exemplos seguintes demonstram a utilização desta função no módulo VBA (Visual Basic for Applications). Para obter mais informações sobre trabalhar com o VBA, selecione Referência para Programadores na lista pendente junto a Procurar e introduza um ou mais termos na caixa de pesquisa.
Este exemplo utiliza a data e, através da função DatePart, apresenta o trimestre do ano em que ocorre.
Dim TheDate As Date ' Declare variables.
Dim Msg
TheDate = InputBox("Enter a date:")
Msg = "Quarter: " & DatePart("q", TheDate)
MsgBox Msg