Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado

Función CDate con VBA

| 8 comentarios

¿Qué es la función CDate?

Es una función de VBA que nos va a devolver una expresión del tipo date.

¿Cómo usar esta función?

La denominación general de la función CDate es la siguiente:

CDate(fecha) --> donde fecha es una expresión de fecha válida; es decir, debe ser aceptada por el sistema. Además puedes poner la hora si lo deseas.

Por ejemplo, una forma equivocada de usarlo es la siguiente:

texto = CDate("20 de Mayo del 2012")
Range("B2") = texto

El sistema nos va a rechazar esta expresion y nos va a dar un error muy frecuente al usar la función CDate

Función CDate error

La pregunta ahora es: ¿Qué expresiones podemos usar en la función CDate?

Estos son algunos ejemplos donde la función CDate nos va a ceptar nuestras expresiones:

CDate("May 12 2012")
CDate("20 May 2010")
CDate("2010 06 May")

El orden de estos no va afectar la expresion date que nos devuelva la función; eso si, hay que tomar en cuenta como esté configurado nuestro sistema; porque eso determina los meses que nos acepta.

En inglés nos aceptara: Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
En español nos aceptara: Ene Feb Mar Abr May Jun Jul Ago Sep Oct Nov Dic

Usando otros ejemplos donde nos aceptar la función CDate.

CDate("02/06/2011")
CDate("10/25/91 15pm")
CDate("04:25:33 am")

¿En qué nos ayuda?

A no configurar las celdas a formato fecha manualmente ya que esta función lo hará por nosotros.

Ejemplos en Excel:

Descargar ejemplos de CDate

-----------------------

Elaborado por: Daniel Eduardo Espinoza Rodriguez

8 comentarios

  1. Esta funcion CDATE he usado muy poco en mi ligera experiencia en programación VBA para excel, le he dado uso a las funciones CINT, CSTR, CINT y para nada el CDATEpero me estoy enterando que es un muy util si deseamos trabajar con variables tipo fecha, definitivamente hoy he aprendido algo nuevo

  2. La función Cdate convierte un dato tipo caracter a tipo fecha. Es utilizado para concatenar cadenas y enviar o imprimir mensajes de texto.

  3. Cuando se trabajan data que incluye campos asociados a cronogramas y fechas, muchas veces uno se encuentra con fechas que esta escrita de diverso modo, o dias, meses, y anos que estan en diversos campos. Con esta funcion Cdate, se puede primero concatenar y luego convertirlas al formato que nos devolvera una expresión del tipo date.
    Saludos,
    Jorge Luis Rojas silva

  4. en mi caso uso el CDate para 3 textbox a cada una de las tres celdas pero si los inserto del mismo mes los tres uno me invierte el formato de dia-mes a mes-año

  5. Excelente!!
    funciona perfectamente!!
    gracias

  6. para el caso de ingles no funciona manda el erro 13 CDATE("12-Apr-2017")

  7. Si utilizo el cdate ("01/07/18") donde 7 es el mes, en la celda del excel me grava como 07/01/18 e incluso me arroja otra fecha diferente.
    Me gustaria que me puedan colaborar en identificar mi error.

  8. Gracias me ayudo bastante tenia un problema de en los primeros días del año me invertía el mes por el año y con CDate quedo resuelto saludos

Deja una respuesta

Los campos requeridos estan marcados con *.