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 |