Cómo Insertar Marca de Tiempo en Excel Cuando Cambia la Celda (2 Maneras Efectivas)

  • Compartir Este
Hugh West

Este artículo ilustra cómo poner una marca de tiempo en Excel cuando cambia una celda. Es posible que necesite realizar un seguimiento de las entradas de datos en las celdas de una columna en particular. Por ejemplo, ha reservado la columna B para introducir datos. Ahora desea la marca de tiempo en una celda adyacente en la columna C cuando se actualiza una celda en la columna B. Este artículo le ayudará a hacerlo de 2 maneras eficaces.

Descargar el cuaderno de prácticas

Puede descargar el cuaderno de prácticas desde el botón de descarga que aparece a continuación.

Timestamp en Excel.xlsm

2 Maneras de Insertar Marca de Tiempo en Excel Cuando Cambia la Celda

1. Utilice IF, AND, NOW y otras funciones para insertar marcas de tiempo en Excel

Siga los pasos que se indican a continuación para obtener una marca de tiempo mediante fórmulas cuando cambia una celda.

📌 Pasos

  • Primera prensa ALT+F+T para abrir Opciones de Excel A continuación, vaya a la Fórmulas A continuación, marque la casilla Activar el cálculo iterativo A continuación, active la casilla Iteraciones máximas a 1. A continuación, haga clic en Aceptar.

  • Ahora, introduzca la siguiente fórmula en la celda C5 A continuación, arrastre el Asa de llenado para copiar la fórmula en las celdas de abajo.
=IF(AND(B5"",D5B5),NOW(),IF(B5="","",C5))

  • A continuación, introduzca la siguiente fórmula en la celda D5 A continuación, arrastre el botón Asa de llenado a las celdas de abajo como antes.
=IF(B5="","",IF(OR(C5="",AND(ISNUMBER(D5),B5=D5)),D5,B5))

  • Ahora, empieza a introducir valores en las celdas de columna B Después de eso, obtendrá el siguiente resultado. Aquí, columna D es una columna de ayuda. Puede ocultarla haciendo clic con el botón derecho del ratón después de seleccionar la columna.

  • También puede introducir la siguiente fórmula en la celda C5 para obtener el mismo resultado.
=IF(B5"",IF(C5="",NOW(),C5),"")

  • Es posible que tenga que cambiar el formato de las celdas en columna C Seleccione la columna haciendo clic en el número de columna de la parte superior. A continuación, pulse CTRL+1 para abrir el Formatear celdas Ahora, haga clic en el botón A medida A continuación, introduzca d-mmm-aaaa hh:mm:ss AM/PM en el Tipo Por último, haga clic en Aceptar.

Desglose de fórmulas:

Fórmula en la celda C5:

➤ IF(B5="","",C5))

En Función IF no devuelve nada si la celda B5 está vacío. En caso contrario, devuelve el mismo valor almacenado en C5 .

➤ AHORA()

En Función NOW devuelve la fecha y hora actuales.

➤ Y(B5"",D5B5)

En Función AND devuelve TRUE si ambos argumentos son verdaderos, es decir, célula B5 no está vacío y células B5 y D5 no tienen el mismo valor.

➤ IF(AND(B5"",D5B5),NOW(),IF(B5="","",C5))

Si el Función AND devuelve TRUE entonces el Función IF devuelve la fecha y hora actuales obtenidas de la Función NOW En caso contrario, devuelve el resultado obtenido a partir del argumento que contiene la variable Función IF .

Fórmula en la celda D5:

➤ ISNUMBER(D5)

En Función ISNUMBER devuelve TRUE si celda D5 contiene un número. En caso contrario, devuelve Falso .

➤ AND(ISNUMBER(D5),B5=D5)

En Función AND devuelve TRUE si celda D5 contiene un número y celdas B5 y D5 tienen el mismo valor. Devuelve FALSO de lo contrario.

➤ OR(C5="",AND(ISNUMBER(D5),B5=D5))

En Función OR devuelve TRUE si uno de los argumentos es verdadero, es decir, célula C5 está vacío o Función AND devuelve TRUE Devuelve FALSO si todos los argumentos son falsos.

➤ IF(OR(C5="",AND(ISNUMBER(D5),B5=D5)),D5,B5)

En Función IF devuelve el mismo valor almacenado en la celda D5 si el Función OR devuelve TRUE En caso contrario, devuelve el valor de la celda B5 .

➤ IF(B5="","",IF(OR(C5="",AND(ISNUMBER(D5),B5=D5)),D5,B5))

En Función IF no devuelve nada si la celda B5 está vacío. En caso contrario, devuelve el resultado obtenido a partir del argumento que contiene la variable Función IF .

Read More: Cómo insertar Excel marca de tiempo cuando los cambios de celda sin VBA (3 maneras)

Lecturas similares

  • Cómo Insertar Fecha Estática en Excel (4 Métodos Sencillos)
  • Excel VBA: Insertar marca de tiempo cuando se ejecuta una macro
  • Cómo Insertar un Sello de Fecha en Excel Cuando se Modifican las Celdas de una Fila
  • Convertir Unix Timestamp a Fecha en Excel (3 Métodos)

2. Aplicar Código VBA para Insertar Timestamp en Excel Cuando Cambia la Celda

También puede obtener una marca de tiempo en Excel cuando una celda cambia usando VBA. Siga los siguientes pasos para poder hacerlo.

📌 Pasos

  • En primer lugar, haga clic con el botón derecho del ratón en la pestaña de la hoja de cálculo de destino. A continuación, seleccione Ver Código Esto abrirá el módulo de código para esa hoja de cálculo en particular.

  • A continuación, copie el siguiente código utilizando el botón de copia situado en la esquina superior derecha.
 Private Sub Worksheet_Change(ByVal Target As Range) Dim CellCol, TimeCol, Row, Col As Integer Dim DpRng, Rng As Range CellCol = 2 TimeCol = 3 Row = Target.Row Col = Target.Column If Row <= 4 Then Exit Sub Timestamp = Format(Now, "DD-MM-YYYY HH:MM:SS AM/PM") If Target.Text "" Then If Col = CellCol Then Cells(Row, TimeCol) = Timestamp Else On Error Resume Next Set DpRng = Target.Dependents ForEach Rng In DpRng If Rng.Column = CellCol Then Cells(Rng.Row, TimeCol) = Timestamp End If Next End If End If End Sub 
  • Después de eso, pegue el código copiado en el módulo en blanco como se muestra a continuación.

  • A continuación, guarde el documento como libro de trabajo habilitado para macros Ahora, empieza a introducir datos en las celdas de la columna B. Obtendrás los mismos resultados que antes.

Explicación del código VBA:

Private Sub Hoja_de_trabajo_Cambiar(ByVal Destino As Range)

Dim CellCol, TimeCol, Row, Col As Integer

Dim DpRng, Rng As Range

Declarar las variables necesarias.

CeldaCol = 2

Columna de entrada de datos.

TiempoCol = 3

Columna Timestamp.

Fila = Objetivo.Fila

Col = Columna.Destino

Almacenar los números de fila y columna de la celda seleccionada.

If Row <= 4 Then Exit Sub

Cualquier cambio dentro de las 4 primeras filas no creará una marca de tiempo.

Timestamp = Format(Now, "DD-MM-AAAA HH:MM:SS AM/PM")

La marca de tiempo se formateará de esta manera. Cámbiela según sea necesario.

If Destino.Texto "" Then

Si Col = CeldaCol Entonces

Cells(Row, TimeCol) = Timestamp

Crea una marca de tiempo si la celda seleccionada está vacía.

En caso de error Reanudar siguiente

Ignora cualquier error si se produce.

Set DpRng = Destino.Dependientes

Para cada Rng en DpRng

If Rng.Column = CellCol Then

Cells(Rng.Row, TimeCol) = Timestamp

Crea marcas de tiempo para un rango de celdas si no está vacío.

Leer más: Cómo insertar automáticamente entradas de datos de fecha y hora en Excel (5 métodos)

Cosas para recordar

  • Debe utilizar un formato personalizado para las celdas de la columna B para obtener una fecha y hora con el formato adecuado.
  • La fórmula alternativa sólo funciona cuando los datos se introducen en celdas en blanco.
  • Aquí, la entrada de datos y la columna de fecha y hora están codificadas en el código VBA. Debe modificar el código en función de su conjunto de datos.

Conclusión

Ahora ya sabes cómo poner una marca de tiempo en Excel cuando cambia una celda. ¿Tienes más dudas o sugerencias? Por favor, utiliza la sección de comentarios más abajo para ello. También puedes visitar nuestro ExcelWIKI blog para explorar más sobre excel. Quédate con nosotros y sigue aprendiendo.

Hugh West es un capacitador y analista de Excel altamente experimentado con más de 10 años de experiencia en la industria. Tiene una Licenciatura en Contabilidad y Finanzas y una Maestría en Administración de Empresas. Hugh tiene una pasión por la enseñanza y ha desarrollado un enfoque de enseñanza único que es fácil de seguir y comprender. Su conocimiento experto de Excel ha ayudado a miles de estudiantes y profesionales en todo el mundo a mejorar sus habilidades y sobresalir en sus carreras. A través de su blog, Hugh comparte su conocimiento con el mundo, ofreciendo tutoriales gratuitos de Excel y capacitación en línea para ayudar a las personas y empresas a alcanzar su máximo potencial.