Imagen: 200dgr/Shutterstock

Muchas aplicaciones usan una marca de tiempo para determinar cuándo se ingresa un registro o se completa un proyecto. Son comunes y útiles cuando necesita saber cuándo está pasando algo. Hay varias maneras de hacer el trabajo, pero tenga cuidado. Hay una manera fácil, una mala y luego una forma automatizada. En este artículo, repasaremos los tres, y puedes decidir si usar el método simple o automatizar. También aprenderá por qué no desea utilizar el método incorrecto, uno que, a primera vista, probablemente parezca factible, pero no lo es.

VER: 69 trucos de Excel que todo usuario debe dominar (República Tecnológica)

Uso Microsoft 365 en un sistema Windows 10 de 64 bits, pero puede usar versiones anteriores. La versión en línea no es compatible con la macro. Puede descargar los archivos de demostración .xlxs, .cls y .xls o trabajar con sus propios datos.

Índice
  • ¿Qué es una marca de tiempo?
  • Utilice las teclas de acceso directo integradas
  • Por qué NOW() y TODAY() no funcionarán como marca de tiempo en Excel
  • Cómo usar una macro para una marca de tiempo en Excel
  • ¿Qué es una marca de tiempo?

    No es fácil definir el término marca de tiempo ya que su definición depende de su uso. En pocas palabras, es la fecha y la hora actuales que se utilizan para identificar cuándo está sucediendo algo. Esta puede ser la hora en que se ingresó el registro, la hora en que se completó un proyecto, etc.

    Utilice las teclas de acceso directo integradas

    Si está familiarizado con Excel, probablemente sepa que puede usar algunos atajos para ingresar la fecha y la hora:

    • Datos: Ctrl+;
    • Hora: Ctrl+Mayús+;

    Si desea que ambos valores estén en la misma celda, siempre puede usar estos atajos. Ingrese el primero y sin presionar Enter, mientras aún está en modo de edición, ingrese un espacio, luego presione el segundo atajo. El resultado es un formato personalizado que muestra la fecha y la hora. Figura A muestra el resultado de usar estos atajos. Excel no solo ingresa la fecha y la hora, sino que también formatea las celdas para fines de visualización.

    Figura A

    No hay nada de malo en usar teclas de método abreviado: funcionan y, si no le molestan las pulsaciones de teclas, esta es una solución fácil. La desventaja es, por supuesto, que debe recordar ejecutar las pulsaciones de teclas. Combinar los dos en una sola celda probablemente tampoco sea una buena idea, a menos que sus usuarios sean particularmente hábiles; es posible que no recuerden usar ambos y que sean incoherentes con el delimitador que separa los dos valores.

    VER: Windows 10: Listas de comandos de voz para reconocimiento de voz y dictado (PDF gratis) (República Tecnológica)

    Por lo general, prefiero la solución más simple, y las pulsaciones de teclas pueden funcionar para usted. Por otro lado, probablemente no sea una buena solución para transmitir a los usuarios.

    Por qué NOW() y TODAY() no funcionarán como marca de tiempo en Excel

    Algunos de ustedes podrían pensar que las funciones AHORA() y HOY() harán el trabajo, pero no lo harán fácilmente. NOW() devuelve la fecha y la hora actuales y lo que muestra depende del formato. HOY() muestra el día actual.

    perfecto verdad? No. Estas son funciones volátiles. Esto significa que ambas funciones se actualizarán cada vez que se calcule la hoja, por lo que están lejos de ser perfectas. Puede convertir los resultados a valores estáticos, pero eso es mucho trabajo, demasiado trabajo.

    Cómo usar una macro para una marca de tiempo en Excel

    La forma más segura de obtener una marca de tiempo correcta que se mantenga correcta y consistente es usar una macro, o más bien una función definida por el usuario. El código es simple. El mayor problema es saber cuándo ejecutarlo. Para nuestros propósitos, agregaremos la macro a la barra de herramientas de acceso rápido. El usuario simplemente hace clic en él cuando está listo para agregar la marca de tiempo.

    VER: Microsoft podría lanzar el escritorio como servicio de Windows 10 este verano (República Tecnológica)

    El subprocedimiento en Lista A es corto y dulce. Usando la celda seleccionada, que está en manos del usuario, este código ingresa una función AHORA() formateada que muestra la fecha y la hora. Dependiendo de sus necesidades, puede optar por usar HOY() o formatear la celda de manera diferente.

    Lista A

    submarca de tiempo()

    'Ingrese la fecha y hora actual, en formato m/d/yyyy h:mm:ss AM/PM.

    'El usuario seleccionará la celda y luego hará clic en el botón macro en QAT.

    Con selección

    .Valor = Ahora

    .NumberFormat = "m/d/aaaa h:mm:ss AM/PM"

    Terminar con

    Título final

    Para ingresar a la macro, siga estos pasos:

    1. Presione Alt+F11 para abrir el editor de Visual Basic.
    2. En el editor de proyectos (a la izquierda), seleccione el módulo ThisWorkbook.
    3. Introduce el código en el módulo (Figura B). No pegue el código de esta página web en el módulo, ya que no funcionará. Puede importar el archivo .cls incluido en la descarga o ingresar el código manualmente. También puede pegar el código en un editor de texto y luego copiarlo en el módulo; eso debería funcionar. El problema es que los personajes fantasma de la web están pegados al texto sin formato.
    4. Regrese a Excel y guarde el libro de trabajo como una macro habilitada para macros. Si está utilizando una versión de menú, puede omitir este paso.

    Figura B

    Ejecutemos el procedimiento desde la pestaña Desarrollador, solo para asegurarnos de que funciona. Para hacer esto, haga clic en la pestaña Desarrollador y siga estos pasos:

    1. Haga clic en la celda donde desea ingresar la marca de tiempo.
    2. En la pestaña Desarrollador, haga clic en Macros en el grupo Código.
    3. En el cuadro de diálogo resultante, elija el procedimiento en el campo Nombre de la macro (Figura C), luego haga clic en Ejecutar. Figura D muestra la marca de tiempo resultante.

    Figura C

    Figura D

    No desea ejecutar el procedimiento de esta manera cada vez que desee ingresar una marca de tiempo, así que automaticemos un poco este proceso. Específicamente, agregaremos el procedimiento al QAT para que solo tenga que seleccionar la celda, hacer clic en el botón del QAT y continuar con su trabajo. (La versión del menú no es compatible con QAT, pero puede asignar una tecla de acceso directo).

    Para agregar la macro al QAT, siga estos pasos:

    1. Haga clic en el menú desplegable QAT (la flecha a la derecha del QAT) y elija Más comandos.
    2. En la lista desplegable Elegir comandos de, elija Macros.
    3. Solo hay uno en el libro de trabajo de demostración, pero si está trabajando con su propio archivo, asegúrese de seleccionar la macro correcta: ThisWorkbook.TimeStamp.
    4. Haga clic en Agregar para moverlo a la lista QAT a la derecha (Figura E).
    5. Haga clic en Aceptar para volver a la hoja. Verá el icono de macro en el QAT (Figura F).

    Figura E

    Figura F

    ¡Ha terminado! Seleccione cualquier celda y haga clic en el ícono de macro en el QAT para ingresar una marca de tiempo. Puede considerar agregar el nombre del usuario, cambiar el formato o ingresar solo la fecha. Si se anima, puede crear un procedimiento basado en parámetros que permita al usuario elegir estos elementos sobre la marcha. Tal como está, esta es una solución que los usuarios no dudarán en usar y devolverá valores consistentes.