Se recomienda usar Visual Studio 2017
Esta documentación está archivada y no tiene mantenimiento.

Date (Tipo de datos, Visual Basic)

Actualización: noviembre 2007

Contiene valores IEEE de 64 bits (8 bytes) que representan fechas comprendidas entre el 1 de enero del año 0001 y el 31 de diciembre de 9999, y horas comprendidas entre las 0:00:00 (medianoche) y las 11:59:59. Cada incremento representa 100 nanosegundos de tiempo transcurrido desde el comienzo del 1 de enero del año 1 del calendario gregoriano. El valor máximo representa 100 nanosegundos antes del comienzo del 1 de enero del año 10000.

Utilice el tipo de datos Date para albergar valores de fecha, valores de tiempo o valores de fecha y hora.

El valor predeterminado de Date es 0:00:00 (medianoche) del 1 de enero de 0001.

Requisitos de formato

Debe incluir un literal Date dentro de los signos de número (# #). Debe especificar el valor de fecha en el formato M/d/yyyy, por ejemplo #5/31/1993#. Este requisito es independiente de la configuración regional y de la configuración de formato de fecha y hora del equipo.

El motivo de esta restricción es que el significado del código nunca debe cambiar en función de la configuración regional en que se ejecuta la aplicación. Suponga que asigna un literal Date de #3/4/1998# para representar 4 de marzo de 1998. En una configuración regional que utilice el formato mm/dd/yyyy, 3/4/1998 se compila como desee. Pero suponga que implementa la aplicación en varios países. En una configuración regional que utilice el formato dd/mm/yyyy, el literal incluido en el código se compilará como Abril 3, 1998. En una configuración local que utilice el formato yyyy/mm/dd, el literal podría no ser válido (Abril 1998, 0003) y generar un error de compilación.

Soluciones

Para convertir un literal de tipo Date al formato de la configuración regional o a un formato personalizado, proporcione el literal a la función Format (Función) especificando Formatos de fecha y hora predefinidos (Función Format) o Formatos de fecha y hora definidos por el usuario (Función Format). En el siguiente ejemplo se muestra esta operación.

MsgBox("The formatted date is " & Format(#5/31/1993#, "dddd, d MMM yyyy"))

Si lo desea, puede utilizar también uno de los constructores sobrecargados de la estructura DateTime para ensamblar un valor de fecha y hora. En el ejemplo siguiente se crea un valor para representar Mayo 31, 1993 a las 12:14 del mediodía.

Dim dateInMay As New System.DateTime(1993, 5, 31, 12, 14, 0)

Formato de hora

Puede especificar el valor de hora con un formato de 12 horas o de 24 horas, por ejemplo #1:15:30 PM# o #13:15:30#. Sin embargo, si no especifica los minutos ni los segundos, debe especificar a.m. o p.m.

Valores predeterminados de fecha y hora

Si no incluye una fecha en un literal de fecha y hora, Visual Basic establece la parte de fecha del valor en Enero 1, 0001. Si no incluye una hora en un literal de fecha y hora, Visual Basic establece la parte de hora del valor en el inicio del día, es decir, medianoche (0:00:00).

Conversiones de tipo

Si convierte un valor Date al tipo String, Visual Basic representa la fecha en función del formato corto de fecha especificado por la configuración regional en tiempo de ejecución, y representa la hora de acuerdo con el formato de hora (12 o 24 horas) especificado por la configuración regional en tiempo de ejecución.

Sugerencias de programación

  • Consideraciones de interoperabilidad. Si está interactuando con componentes que no se han escrito para .NET Framework, por ejemplo objetos de automatización u objetos COM, tenga presente que los tipos de fecha y hora definidos en otros entornos no son compatibles con el tipo Date de Visual Basic. Al transferir un argumento de fecha y hora a un componente de este tipo, declárelo como Double en lugar de Date en el nuevo código de Visual Basic, y utilice los métodos de conversión DateTime.FromOADate y DateTime.ToOADate.

  • Caracteres de tipo.Date no tiene caracteres de tipo de literal ni caracteres de tipo de identificador. Sin embargo, el compilador trata los literales incluidos entre caracteres de signo de número (# #) como Date.

  • Tipo de marco de trabajo. El tipo correspondiente en .NET Framework es la estructura System.DateTime.

Una variable o constante del tipo de datos Date contiene tanto la fecha como la hora. Esto se ilustra en el siguiente ejemplo:

Dim someDateAndTime As Date = #8/13/2002 12:14 PM#
Mostrar: