Fecha de formato VBA

Este tutorial demostrará cómo formatear fechas usando VBA.

Formato de fechas en VBA

Hay dos métodos para formatear fechas usando VBA.

  1. La propiedad NumberFormat de Cells / Ranges: para formatear las fechas almacenadas en las celdas
  2. La función de formato VBA: para formatear fechas en VBA (por ejemplo, variables)

NumberFormat - Fechas

El formato de número predeterminado de una celda en Excel es General. Puede mostrar valores como números, texto, fechas, porcentajes o monedas cambiando el formato del número. La propiedad NumberFormat se puede usar en VBA para establecer el formato de número de fechas en una celda o rango.

Nota: Para ver los diferentes formatos de fecha estándar disponibles en Excel, vaya a Inicio> Número y verá opciones como Fecha corta, Fecha larga y Hora.


Cita corta

La opción de formato de número de fecha corta muestra la fecha en un formato numérico corto.

El siguiente código establecerá la propiedad .NumberFormat de la celda A1 en Fecha corta:

1 Rango ("A1"). NumberFormat = "mm / dd / aaaa"

Fecha larga

El formato de número de fecha larga muestra la fecha en un formato escrito más largo. El siguiente código establecerá la propiedad .NumberFormat de la celda A1 en fecha larga:

1 Rango ("A1"). NumberFormat = "dddd, mmmm dd, aaaa"

Fechas personalizadas

Para ver los códigos de formato de número personalizados que puede usar en VBA para formatear fechas, vaya a Inicio> Número y haga clic en el Lanzador de cuadro de diálogo. Seleccione la pestaña Número y elija Personalizado.

Puede seleccionar los formatos integrados personalizados para su fecha o crear sus propios formatos de fecha definidos por el usuario. El siguiente código establecerá la propiedad .NumberFormat de la celda A1 en un formato de fecha personalizado incorporado:

1 Rango ("A1"). NumberFormat = "mmm-aa"

El resultado es:

El siguiente código establecerá la propiedad .NumberFormat de la celda A1, en un formato de fecha personalizado definido por el usuario:

1 Rango ("A1"). NumberFormat = "dddd-dd-mmm-aa"

El resultado es:

Al revisar los ejemplos prediseñados de Excel, puede aprender cómo se deben ingresar NumberFormats. Para obtener más información, lea la documentación de Microsoft sobre formatos de números para fechas.

Función de formato VBA

Como se mencionó anteriormente, el método NumberFormat es apropiado para configurar el formato Number de las fechas almacenadas en las celdas de Excel. En VBA, puede usar la función de formato para convertir fechas en cadenas con cierto formato de fecha.

Usaría la siguiente sintaxis para formatear fechas:

Formato (String_Representation, NumberFormatCode) donde:

String_Representation: la cadena de texto que representa la fecha.

NumberFormatCode: el código de formato numérico que especifica la forma en que se debe mostrar la fecha.

El siguiente código muestra cómo formatear una representación de cadena de texto de una fecha como formato de fecha larga:

1 Formato de MsgBox ("1/1/2010", "dddd, mmmm dd, aaaa")

El resultado es:

Observe que la función de formato usa la misma sintaxis de formato de fecha que el formato de número anterior.

El siguiente código muestra cómo formatear una representación de cadena de texto de una fecha como formato de fecha media:

1 Formato MsgBox ("09 de octubre de 2012", "Fecha media")

El resultado es:

El siguiente código muestra cómo formatear una representación de cadena de texto de una fecha como un formato definido por el usuario:

1 Formato MsgBox ("09 de octubre de 2012", "dddd: dd / mm / aa")

Generador de formatos personalizados de VBA

Nuestro complemento VBA: AutoMacro contiene un generador de formato personalizado para el editor VBA. Esto le permite establecer formatos personalizados y obtener una vista previa inmediata de la salida para el valor deseado:

El complemento VBA contiene muchos otros "generadores de código", una extensa biblioteca de códigos y una variedad de otras herramientas de codificación. ¡Es el complemento definitivo para cualquiera que se tome en serio la programación de VBA!

Fecha de formato VBA en Access

La función VBA Format Date funciona exactamente igual en Access VBA que en Excel VBA.

12345678910 Función GetDateFilter () como cadena'crea una cadena para obtener información de 2 campos de fecha en un formulario en AccessDim strDateField como cadenaSi IsNull (Me.txtSDate) = False EntoncesSi IsNull (Me.txtEDate) = True Entonces Me.txtEDate = Me.txtSDateSi strDateField2 = "" EntoncesGetDateFilter = strDateField & "Entre #" & Formato (Me.txtSDate, "mm / dd / aaaa") & "# Y #" & Formato (Me.txtEDate, "mm / dd / aaaa") & "#"Terminara siTerminara siFunción final

Va a ayudar al desarrollo del sitio, compartir la página con sus amigos

wave wave wave wave wave