Función VBA DatePart

FechaPart Descripción

Devuelve una parte específica de una fecha determinada.

Ejemplos simples de DatePart

Aquí hay un ejemplo simple de DatePart:

123 Sub DatePart_Year_Test ()MsgBox DatePart ("aaaa", # 1/1/2019 #)End Sub

Este código devolverá 2022.

Sintaxis de DatePart

En el Editor de VBA, puede escribir "DatePart (" para ver la sintaxis de la función DatePart:

La función DatePart contiene 4 argumentos:

Intervalo: Unidad de tiempo (días, meses, años, etc.). Ingrese como cadena. (p. ej., "m" para el mes)

Configuración Descripción
aaaa Año
q Cuarto
metro Mes
y Día del año
D Día
w Día laborable
ww Semana
h Hora
norte Minuto
s Segundo

Fecha: Valor variable (fecha) que desea evaluar.

Primer dia de la semana: Una constante que especifica el primer día de la semana. Esto es opcional. Si no se especifica, se asume el domingo.

Constante Valor Descripción
vbUseSystem 0 Utilice la configuración de la API de NLS.
domingo 1 Domingo (predeterminado)
vbMonday 2 lunes
vbTuesday 3 martes
vb miércoles 4 miércoles
vbjueves 5 jueves
vbViernes 6 viernes
vb sábado 7 sábado

FirstWeekOfYear: Una constante que especifica la primera semana del año. Esto es opcional. Si no se especifica, se supone que la primera semana es la semana en la que ocurre el 1 de enero.

Constante Valor Descripción
vbUseSystem 0 Utilice la configuración de la API de NLS.
vbFirstJan1 1 Comience con la semana en la que ocurre el 1 de enero (predeterminado).
vbFirstFourDays 2 Comience con la primera semana que tenga al menos cuatro días en el nuevo año.
vbFirstFullWeek 3 Comience con la primera semana completa del año.

Programación VBA | ¡Code Generator funciona para usted!

Ejemplos de la función DatePart de Excel VBA

Fechas de referencia

Para comenzar, demostraremos diferentes formas de hacer referencia a fechas usando la función VBA DatePart.

Cada una de estas funciones DatePart produce el mismo resultado:

123456789 Sub DateAdd_ReferenceDates ()MsgBox DatePart ("aaaa", # 4/1/2019 #)MsgBox DatePart ("aaaa", DateSerial (2019, 4, 1))MsgBox DatePart ("aaaa", DateValue ("1 de abril de 2022"))End Sub

O puede hacer referencia a una celda que contiene una fecha:

12345 Sub DatePart_ReferenceDate_Cell ()MsgBox DatePart ("aaaa", Rango ("C2"). Valor)End Sub

O cree y haga referencia a variables de fecha:

12345678 Sub DatePart_Variable ()Dim dt como fechadt = # 4/1/2019 #MsgBox DateAdd ("aaaa", dt)End Sub

Usando diferentes unidades de intervalo

Cuarto

123 Sub DatePart_Quarter ()MsgBox DatePart ("q", # 6/30/2019 #)End Sub

Mes

12345 Sub DatePart_Month ()MsgBox DatePart ("m", # 6/30/2019 #)'equivalenteMes de MsgBox (# 6/30/2019 #)End Sub

Día

12345 Sub DatePart_Day ()MsgBox DatePart ("d", # 6/30/2019 #)'equivalenteMsgBox Day (# 6/30/2019 #)End Sub

Semana

12345 Sub DatePart_Week_Test ()MsgBox DatePart ("w", # 6/30/2019 #)'equivalenteMsgBox Día de la semana (# 6/30/2019 #)End Sub

Hora

123456789101112 Sub DatePart_Hour ()Dim dt como fechaDim nHour tan largodt = # 14/8/2019 9:30:00 AM #nHour = DatePart ("h", dt)MsgBox nHour'equivalenteMsgBox Hora (dt)End Sub

Minutos

123456 Sub DatePart_Minute ()MsgBox DatePart ("n", # 8/14/2019 9:15:00 AM #)'equivalenteMsgBox Minute (# 8/14/2019 9:15:00 AM #)MsgBox Minute (# 9: 15: 00 AM #)End Sub

Segundo

123456 Sub DatePart_Second ()MsgBox DatePart ("s", # 8/14/2019 9:15:15 AM #)'equivalenteMsgBox Second (# 8/14/2019 9:15:15 AM #)MsgBox Second (# 9: 15: 15 AM #)End Sub
wave wave wave wave wave