Insertar, actualizar y dar formato a fechas y horas

La fecha y la hora se pueden insertar en Word de dos maneras, como texto plano o como campos. De esta última forma, podremos, además, modificar el formato a fechas y horas y actualizarlas.

En el grupo Texto de la cinta Insertar, se encuentra el comando Fecha y hora que abre el cuadro de diálogo del mismo nombre. Ahí podemos elegir entre diferentes formatos para cada uno de los idiomas que tengamos instalados y habilitados en el programa.

Pero la opción más importante es la casilla Actualizar automáticamente, cuando está marcada nos inserta campos editables y actualizables. Si no lo está, la fecha y la hora serán las actuales, como texto plano.

Muestra el cuadro de diálogo Fecha y hora y varios ejemplos como texto plano y como campos.
Arriba podemos ver varios ejemplos de fecha y hora en texto plano y como campos.

Un mayor control tendremos si lo hacemos desde la misma ruta con Explorar elementos rápidos > Campo

Muestra los cuadros de diálogo Campo y Opciones de campo. Vemos la lista de campos a los que se puede añadir: DATE, CREATEDATE,TIME, EDITTIME,SAVEDATE Y PRINTDATE y las opciones de formato.
Aquí se muestran los campos que pueden incorporar fecha y hora y sus opciones.

Con los conocimientos que ya tenemos sobre campos, podemos hacerlo directamente con las técnicas conocidas para insertar y editar campos. Claramente observamos la presencia del modificador de fecha y hora: \@ seguido por los diferentes formatos entrecomillados. Para incluir texto se usa el entrecomillado sencillo: { DATE \@ "dddd, dd 'de 'MMMM' de 'yyyy" }

Varios ejemplos de formato a fechas y horas
Varios ejemplos de formato a fechas y horas

En otras entradas trato otros modificadores. En esta hablo de los de números.

Espero que te guste, sea útil, sugerencias y comentarios para nuevos temas. Sigue el blog y compártelo entre tus contactos.

También puedes visitar el Curso avanzado de Word en mi canal de YouTube.

Esta entrada tiene 66 comentarios

  1. juaferpo

    Hola buenos dias , necesito modificar la fecha para que salga el dia siguiente en vez de hoy, a ver si me podeis echar una mano, muchas gracias

    1. Pepe Martínez

      Hola Juaferpo:
      Muchas gracias por usar mi blog.
      El campo para hacer los cálculos sería enorme, ya que implicaría el uso de decenas de anidamientos.
      La mejor solución es crear una plantilla con un marcador y ejecutar una macro Autonew. Si está en la misma plantilla normal, no recomendado, sería AutoOpen.
      Ejemplo:

      Sub AutoNew()
      With ActiveDocument.Bookmarks("Fechamasuno").Range
      .InsertBefore Format(Date + 1, "dd mmmm yyyy")
      End With
      End Sub

      El marcador lo insertas donde quieras la fecha y lo nombras como quieras. En el ejemplo lo he llamado Fechamasuno.

      1. Leonardo

        Hola, no he podido solucionar lo de sumar un dia a una fecha,,, me podría explicar

        1. Pepe Martínez

          Hola, de nuevo, Leonardo:
          Mira la respuesta al primer comentario, en mi nuevo blog. Si continuas con los problemas, me vuelves a contactar, incluso directamente a mi correo.

      2. macronovel

        fabuloso, nunca he usado los macros en 30 años que uso Word, pero el ejemplo me ha servido para lo que necesitaba, sumar un mes más a la fecha de hoy. Lo que he hecho es indicar Date + 30. Que igual en los meses con 31 días o los febreros baila un día, pero bueno, chispa más o menos, hace el apaño. GRACIAS PEPE. Y felicidades a Jorge por el premio de medicina. Tienes que estar muy orgulloso. Yeah!.

      3. Juan Carlos Lozoya

        Hola Pepe, tu eres el bueno en esto, de antemano infinito agradecimiento por compartir tus conocimientos.
        en la celda de Excel tengo una cadena de texto de unas 50 palabras, al utilizar la correspondencia e intentar traerme el contenido de este campo me da como resultado 0, ¿tendras idea de como puedo resolver esto?, lo que estoy haciendo es una plantilla de contrato, y en esta celda se realiza la descripcion de varios conceptos, que es necesario ampliarse a detalle en su desglose..

        1. Pepe Martínez

          Muchas gracias, Juan Carlos, por seguir y compartir, con tus contactos, mis canales y por tus amables palabras:
          Mira esta entrada: https://wordexperto.com/2017/06/06/errores-cambios-de-formato-al-combinar-correspondencia/
          Otras veces es un problema de longitud máxima del texto, que es de 2^20 (256) caracteres. Este tipo de problema, a veces se soluciona, engañando a Excel con un primer registro falso, para descartar después, que tenga más de 256 caracteres.
          Si no lo solucionas, puedes enviarme los documentos al correo.

  2. Juaferpo

    Hola, muchas gracias, probare lo que me comentas a ver que tal, a parte de esto habria alguna forma de crearlo en excel y convertirlo en word?

    1. Pepe Martínez

      Es peor, vincular un Excel...
      La solución que te propongo, cada vez que abras un documento nuevo basado en esa plantilla, ya lo tienes insertado donde lo necesites. Es mucho más eficiente.
      Gracias, de nuevo y espero seguir contando con tus comentarios.

  3. javier

    Como poner la primera letra mayuscula en las fechas

    1. Pepe Martínez

      Hola Javier y gracias por usar mi blog.
      En la entrada, en la última imagen, tienes un ejemplo con el modificador Caps.
      Gracias, de nuevo y espero seguir contando con tus comentarios

  4. José Hdez.

    he intentado que la fecha salga en mayúsculas, le aplico el formato de mayúsculas, pero a la hora de imprimir sigue saliendo en minúsculas. ¿existe alguna forma?. quisiera que la fecha fuera SÁBADO 23 DE JUNIO DE 2018.

    1. Pepe Martínez

      Hola José:
      Muchas gracias por usar mi blog y por tus comentarios. Muy interesante el que planteas.
      Debes usar el modificador uppercase, como muestro.
      Gracias, de nuevo, y espero seguir contando con tu seguimiento.
      SÁBADO, 23 DE JUNIO DE 2018
      { date \@ “dddd, d’ de ‘MMMM’ de ‘yyyy” \*upper case}

  5. Alfredo

    Hola Pepe,

    Que tal una consulta, para agregar sólo la hora en un campo combinado desde Excel no me respeta el formato establecido. Con otro campo de Fecha si he podido aplicar correctamente el formato, pero no con la hora, y supongo es algo relacionado a la fuente de datos (Excel), ya que si aplico el mismo formato de fecha que me funciona en otros campos tampoco lo aplica.
    Lo que he intentado es:
    { MERGEFIELD Hora_Llegada \@ "h:mm am/pm" MERGEFORMAT },
    pero el resultado es: 1899-12-30 08:00:00, donde la hora es correcta, las 8 am, sin embargo agrega una fecha que corresponde a la primera registrada en Word al no existir en el la fuente (Excel)

    Cómo podría especificar para que únicamente me aparezca la hora, que es el campo requerido (Ej: 08:00 am)

    De antemano, muchas gracias

    1. Pepe Martínez

      Muchas gracias Alfredo por tu seguimiento y comentarios.
      Prueba con este código: { MERGEFIELD Hora_Llegada \@ “h:mm 'am/pm'” \* MERGEFORMAT }

  6. Alfredo

    Gracias Pepe,

    Pero no funciona ni funcionará, probé diversas formas de Sintaxis, pero como te decía, el problema reside en la fuente, en Excel el campo tiene solo la hora, por lo que Word traduce la fecha como el primer valor de su calendario (1899-12-30) y por alguna razón no reconoce ningún formato de fecha para el campo, por lo que no es problema con la Hora, si no incluso con la fecha, ya que no se puede dar formato en Word de ninguna manera, siempre el campo queda cómo: 1899-12-30 15:00:00 aunque lo raro es que la hora si la toma del valor del campo en Excel.
    Bueno, lo he resuelto, pero concatenando el campo Hora con una fecha genérica de manera que Word tome éste nuevo campo y al tener una fecha especificada desde la fuente, sin problemas puedo dar cualquier formato a la fecha u hora en el documento de Word y se sigue registrando sólo la hora en Excel.

    Gracias por la atención.

  7. julian

    Buenas tardes, deseo que al realizar la combinacion de celdas la carta en word me saque el numero de cedula pero separado por puntos ejemplo: hago la combinacion y la cedula me sale 8126515 pero quiero que me salga 8.126.515.agradezco mucho la ayuda

    1. Pepe Martínez

      Muchas gracias Julián por seguir y compartir mis canales:
      En estas entradas comento como editar los campos para los formatos. cualquier duda me comentas.

  8. DORA BARRANTES

    Buen día:
    Pasa que en la base de datos de excell la fecha está como lo indico dia/mes/año, pero cuando hago la combinación de correspondencia, la fecha cambia a mes/día/año.

    Por su atención y colaboración, muchas gracias.

    1. Pepe Martínez

      Muchas gracias, Dora, por seguir y compartir mis canales:
      Mira las soluciones de esta entrada, y, si no lo resuelves, me vuelves a contactar directamente al correo.

  9. Mhony

    BUENAS NOCHES: COMO PUEDO HACER PARA QUE EN UNA COMBINACIÓN DE CORRESPONDENCIA, EN MI BASE DE DATOS LA FECHA ESTA ASÍ: 12/05/2019 Y AL COMBINARLA A WORD QUIERO QUE APAREZCA COMO: DOCE DE MAYO DE DOS MIL DIECINUEVE. OJALA ME PUEDA ASESORAR, GRACIAS!!

    1. Pepe Martínez

      Muchas gracias, Mhony, por seguir y compartir mis canales:
      Tienes que editar el campo de combinación añadiéndole estos modificadores
      Modificadores de número

      1. Javi

        Buenas noches;
        la fecha en cuestión es FECH_SUS_ : 16/03/2020
        solo quiero que emita DIECISÉIS, he realizado lo siguiente :
        { MERGEFIELD FECH_SUS_ \@"d" \ *cardtext }
        Y sale 16.
        Agradeceré su apoyo.

        1. Pepe Martínez

          Muchas gracias, Javi, por seguir y compartir, con tus contactos, mis canales:
          Las comillas para encerrar la d son las inglesas ("d"). Lo demás está bien.

      2. mayra

        necesito ayuda esta formula lista para escribir necesito fecha en letras numeros ejemplo veinticuatro (24) de Enero (01) de Dos mil veintiuno (2021)

  10. Pablo

    Buenas noches, quería saber si Word puede poner un saludo, Buenos días, Buenas tardes o Buenas noches, de manera automática dependiendo de la hora del día.
    Gracias, por su ayuda

    1. Pepe Martínez

      Muchas gracias, Pablo, por seguir y compartir, con tus contactos, mis canales:
      Sí se puede hacer, es complejo, pero se puede hacer. Tanto con programación en VBA como anidando campos. En todos los casos necesitas comparar con los campos Createdate, SaveDate, PrintDate u otros, dentro de un campo IF. La cuestión es ¿Para qué necesitas hacer esto?
      Tienes alternativas más sencillas, aunque requieran de un clic derecho o del tipeo de tres caracteres. Me refiero a crear tres entradas de Autotexto e insertarlas con el tipeo de los dos o tres primeros caracteres del nombre o elegirlos de un desplegable.
      Aquí tienes varias entradas relacionadas: https://wordexperto.com/tag/autotexto/ y tengo programadas más para el futuro. Cualquier duda concreta me contactas.

  11. ELISENDA

    HOLA, EN COMBINAR CORRESPONDENCIA, INSERTO UN CAMPO DE FECHA Y CUANDO LO INSERTA LO PONE EN CATALAN, HE REVISADO AMBOS DOCUMENTOS Y ESTAN EN CASTELLANO. COMO LO PUEDO ARREGLAR?

    1. Pepe Martínez

      Muchas gracias, Elisenda, por seguir y compartir, con tus contactos, mis canales:
      Aquí cuento unos cuantos errores de este tipo: https://wordexperto.com/2017/06/06/errores-cambios-de-formato-al-combinar-correspondencia/
      En tu caso, comprueba que el campo tiene un modificador l de idioma. El modificador de idioma para el español de España es l040a. Lo puedes cambiar, o, directamente, quitarlo y usará el idioma del texto.
      Si tienes problemas no dudes en mandarme el documento al correo.

  12. Jhonatan Gómez

    Buenas noches Pepe, realmente agradezco toda la ayuda que nos brinda por este medio, ciertamente la información que comparte es muy útil; de hecho, me gustaría molestarlo con una consulta adicional: tengo en Excel una columna de Hora, por ejemplo, 14:25, pero al hacer la combinación en Word, necesito que se pueda leer como texto, es decir, catorce horas con veinticinco minutos. He intentado con varios modificares pero no logro obtener el resultado así cómo lo necesito.

    1. Pepe Martínez

      Muchas gracias, Jhonatan, por seguir y compartir, con tus contactos, mis canales y por tus amables palabras:
      Esta sería una opción: { time \@ "h" \* Cardtext } horas y { time \@ "m" \* Cardtext } minutos

      1. Jhonatan

        Wow! Exactamente lo que necesitaba. Le agradezco mucho por su ayuda!!!

  13. Hola Sr Pepe Martinez tenemos un caso de una Plantilla en Word que generamos y llenamos desde un CRM pero el formato de Fecha que sale del sistema CRM es en el formato DD/MM/AAAA ( Eje 1/12/2020 ) pero no tenemos una funcionalidad desde donde se diseña la Plantilla en el CRM para que el formato de Fecha sea Largo que sea Eje. 01 de Diciembre de 2020, que funcionalidad en Word puedo utilizar para que ese dato que viene del CRM se convierta en formato largo

    1. Pepe Martínez

      Muchas gracias, Nelson, por seguir y compartir, con tus contactos, mis canales:
      Es que desconozco como funciona la exportación a Word. Lo más sencillo siempre es editar en el origen, el CRM. Para editar en Word, ya sabes:
      Para incluir texto se usa el entrecomillado sencillo: { DATE \@ "dddd, dd 'de 'MMMM' de 'yyyy" }

  14. Juan P

    Hola Pepe muchas gracias por la información,

    Estoy batallando con el formato fecha en combinar correspondencia, estoy utilizando este formato { DATE \@ "dddd, dd 'de 'MMMM' de 'yyyy" } pero aparece la información como 23 de February de 2021 y preciso que figure como 23 de febrero de 2021.

    Muchas gracias por tu apoyo.

    1. Pepe Martínez

      Muchas gracias, Juan P, por seguir y compartir, con tus contactos, mis canales:
      Comprueba el formato de fecha en la configuración regional (Panel de tareas, del Sistema operativo y en Word en el cuadro de diálogo Fecha y hora, que se abre desde Insertar > Texto > Fecha y hora.

  15. Mónica Andrade

    Hola Sr. Martínez, bunenas tardes. Disculpe de antemano la molestia, quisiera hacerle una consulta; estoy haciendo un documento con combinación de correspondencia, en éste incluyo cuadros de texto con datos que necesito se combine, pero al momento de actualizar mi documento (etiquetas) no actualiza la información contenida en el cuadro de texto, ¿hay alguna manera de solucionarlo?

    1. Pepe Martínez

      Muchas gracias, Mónica, por seguir y compartir, con tus contactos, mis canales:
      El cuadro de texto, que no es la mejor idea, de necesitar algún contenedor prefiero las tablas, debes ponerlo en el documento de combinación e insertar dentro el campo de combinación. Mi curso de combinación de correspondencia en YouTube te puede ayudar: https://www.youtube.com/playlist?list=PLF1OL9sNXkSxGL52T9306FIUtzXOnhDwB

      1. Mónica Andrade

        Mil gracias.

  16. RODRIGO

    Buenas tardes Pepe:
    Necesitaba que cada que yo abriese un documento word se insertase la fecha y hora PERO que permanecieran las fechas insertadas con anterioridad. Me explico: Necesito que cada vez que abra un documento se escriba la fecha y hora. Una vez se haya escrito permanezca inalterada y si vuelvo a abrir el documento que se escriba la fecha y hora de apertura pero que la fecha anterior no se borre.

    En definitiva lo que necesitaba es que en el documento se escribiese un histórico de las fechas en que le he abierto ese documento. Sería algo así:
    22/03/2022 10:40
    22/03/2022 15:35
    23/03/2022 9:24
    etc

    1. Pepe Martínez

      Muchas gracias, Rodrigo, por seguir y compartir, con tus contactos, mis canales:
      Lo que necesitas no se puede hacer en Word. Si realmente lo necesitas debes usar un programa de gestión documental.
      Word te proporciona información en las Propiedades avanzadas > Estadísticas. Si guardas en OneDrive también puedes ver el historial de modificaciones del documento, pero esto es una funcionalidad de OneDrive y no de Word, aunque se accede desde Word: Archivo > Información > Historial de versiones. igualmente el Explorador de archivos de Windows dispone de un historial que se puede activar.
      Lo más parecido en Word es activar el Control de cambios, aunque no refleja todas las modificaciones.

  17. Jose

    Buen día Pepe. Quisera saber cómo quitarle el punto final que se coloca en la fecha a los meses abreviados. Muchas gracias.

  18. JULIO

    Hola Pepe. al momento de usar correspodencia la fecha lo genera en este formato. 24-nov.-2021 pero necesito que la fecha tenga este formato 24-Nov-2021 la información lo obtengo excel.,

    Gracias

  19. qwdcqsdc

    No dice donde encontrar Explorar elementos rápidos > Campo

    1. Pepe Martínez

      Muchas gracias, anónimo, por seguir y compartir con tus contactos mis canales:
      En el segundo párrafo dice:
      En el grupo Texto de la cinta Insertar, se encuentra el comando Fecha y hora que abre el cuadro de diálogo del mismo nombre.
      En el párrafo en cuestión, dice:
      Un mayor control tendremos si lo hacemos desde la misma ruta con Explorar elementos rápidos > Campo
      Es posible que deba ser más explícito, pero creo que está indicado. Muchas gracias.

  20. Richard

    Hola Pepe!

    Muchas gracias por la ayuda, fíjate que quiero insertar en un solo campo la fecha con puro texto, por ejemplo: "veinticuatro de agosto del año dos mil veintidós", actualmente lo logré con tres campos por separado (día, mes y año) pero seguro que se puede en uno solo, ¿cómo puedo hacer?

    Gracias!

    1. Pepe Martínez

      Muchas gracias, Richard, por seguir y compartir con tus contactos mis canales:
      No, no se puede acortar más. El modificador Cardtext tienes que añadirlo por separado para los días, los meses y el año.

  21. Mariona,

    Perfecto, me ha servido para canviar el formato fecha en una plantilla word .

  22. CESAR

    HOLA PEPE, TENGO UN PROBLEMA CON ESTE CODIGO MERGEFIELD HORA_NC \@ "H:mm" Y ME SALE UN NUMERO DECIMAL. TU AYUDA EN ESTE CASO. GRACIAS

  23. Metti

    Hola Pepe, muy bueno el blog y el canal de YouTube.
    Tengo un problema que conseguí resolver casi del todo leyendo tus respuestas, pero llego a un punto donde me falta algo más.
    La sintaxis por defecto del campo Fecha en mi versión de Word es del siguiente modo: 11 de diciembre de 2022 (el mes en minúscula) y la línea del código es {DATE \@ "d 'de' MMMM 'de' yyyy"}
    Busco expresar el Mes en mayúscula, pero sólo la 1era letra, por ej Diciembre en vez de diciembre.
    Las preposiciones "de" entre el día y el mes, y entre el mes y el año, quiero que se mantengan en minúscula.
    O sea, la expresión que busco es: 11 de Diciembre de 2022.
    No obstante, colocando el modificador \*Caps a la línea de código, termina quedando esta línea {DATE \@ "d 'de' MMMM 'de' yyyy" \*Caps} pero al hacerlo me pone en mayúsculas todas las primeras letras, incluidas las preposiciones "de", quedando la expresión como 11 De Diciembre De 2022 , que no es lo que busco.
    Se te ocurre alguna forma sencilla de lograr que quede simplemente 11 de Diciembre de 2022 ?
    Muchas gracias, y un saludo desde Argentina

    1. Pepe Martínez

      Muchas gracias, Metti, por seguir y compartir con tus contactos mis canales y, sobre todo, por tus amables palabras:
      Puedes usar tres campos consecutivos de esta forma:
      {DATE \@ "d" } de {DATE \@ "MMMM" \*Caps} de {DATE \@ "yyyy" }

      1. Arturo

        { DATE \@ "dddd, dd 'de 'MMMM' de 'yyyy" } con este modificador para fecha en una correspondencia en Word no me respeta el mes en español, me lo da en inglés y ya lo intente en muchacho formas, yo quiero que en mi correspondencia diga: "... Comisionado del 14 de marzo al 28 de abril del presente año...."; el mes lo pone en inglés.

        1. Pepe Martínez

          Muchas gracias, Arturo, por seguir y compartir con tus contactos mis canales:
          El idioma en Word, además de un ajuste general, es una propiedad del texto. Comprueba en Revisar > idioma > Establecer idioma de corrección... que esté bien y desmarca Detectar el idioma automáticamente.

  24. Inma P.

    Hola, Pepe:

    Muchas gracias por compartir tus conocimientos.

    Si al editar campo de Mergefield le añado para editar el formato \@ "d' de 'MMMM' de 'yyyy", me sale la fecha de hoy y quiero que me saldo no la de hoy, sino la que viene de la tabla de Excel desde la que estoy vinculando.

    Gracias de antemano.

  25. Francisca

    Hola, necesito automatizar una fecha, para que me sume 15 dias a la fecha automatica del dia de hoy. como puedo hacer?

    1. Pepe Martínez

      Muchas gracias, Francisca, por seguir y compartir mis canales:
      Es muy complicado de hacer en Word. Hay que anidar muchos campos para tomar en consideración la diferente duración de los meses.

  26. ALBERTO

    Hola Pepe,

    Recibe un cordial saludo, espero me puedas ayudar. quiero aplicar ese mismo formato de texto pero en un control de contenido de selector de fecha (ficha de desarollador), en lacuel al utilar el calendario la fecha se refleje en texto. Ejemp. 19 de enero de dos mil veinticuartro

    Gracias de antemano

Deja una respuesta