Função DatePart

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. Devolve uma Variante (Número Inteiro) que contém a parte especificada de uma determinada data.

Sintaxe

DatePart(interval, date, [ firstdayofweek, [ firstweekofyear ]])

A sintaxe da função DatePart tem estes argumentos nomeados:

Sair Descrição
intervalo Obrigatório. Expressão de cadeia que corresponde ao intervalo de tempo que pretende devolver.
data Obrigatório. Valor de Variante (Data) que pretende avaliar.
primeirodiadasemana Opcional. Uma constante que especifica o primeiro dia da semana. Se não especificado, será usado o domingo.
primeirasemanadoano Opcional. Uma constante que especifica a primeira semana do ano. Se não especificada, será usada a semana em que ocorre 1º de janeiro.

Configurações

O argumentode intervalo tem estas definições:

Setting Descrição
aaaa Ano
t Trimestre
m Mês
a Dia do ano
d Dia
s Dia da semana
ss Semana
h Hora
m Minuto
s Segundo

O argumento primeirodiadasemana tem as seguintes configurações:

Constante Valor Descrição
vbUseSystem 0 Use a configuração da API NLS.
vbSunday 1 Domingo (padrã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 configurações:

Constant Valor Descrição
vbUseSystem 0 Use a configuração da API NLS.
vbFirstJan1 1 Comece com a semana em que ocorre 1 de janeiro (padrão).
vbFirstFourDays 2 Comece com a primeira semana que tiver pelo menos quatro dias no novo ano.
vbFirstFullWeek 3 Comece com a primeira semana completa do ano.

Comentários

Utilize a função DatePart para avaliar uma data e devolver um intervalo de tempo específico. Por exemplo, pode utilizar DatePart para calcular o dia da semana ou a hora atual.

O argumento primeirodiadasemana afeta cálculos que usam os símbolos de intervalo "s" e "ss".

Se date for um literal de data, o ano especificado torna-se uma parte permanente dessa data. No entanto, se a data estiver entre aspas duplas (" "), e omitir o ano, o ano atual é inserido no código sempre que a expressão de data for avaliada. Isso possibilita escrever um código que pode ser usado em anos diferentes.

Observação

Para date, quando a configuração da propriedade Calendar for Gregoriano, a data fornecida deverá ser gregoriana. Quando o calendário é Islâmico, a data fornecida deve ser Islâmica.

A parte da data devolvida encontra-se nas unidades de período de tempo do calendário árabe atual. Por exemplo, se o calendário atual for Islâmico e a parte da data a ser retornada for o ano, o valor de year será um ano Islâmico.

Exemplo

Este exemplo utiliza uma data e, com a 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

Confira também

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.

As funções Format ou DatePart podem devolver o número da semana errada para a última segunda-feira do ano