¿Cómo registrar la fecha y la hora automáticamente cuando cambia la celda?
Es fácil para nosotros insertar una fecha y hora estáticas manualmente o insertar una fecha dinámica que cambia con la hora del sistema con una fórmula. Si desea registrar la fecha y la hora automáticamente cuando cambia o ingresa valores, este problema puede ser algo diferente de resolver. Pero, en este artículo, puede resolver esta tarea con los siguientes pasos.
Registre la fecha y la hora automáticamente cuando la celda cambie con el código VBA
Registre la fecha y la hora automáticamente cuando la celda cambie con el código VBA
Por ejemplo, tengo un rango de valores, y ahora, cuando cambio o escribo nuevos valores en la Columna B, quiero que se registre automáticamente la fecha y hora actuales en la Columna C como se muestra en la siguiente captura de pantalla:
Puede finalizar esta tarea con el siguiente código VBA. Por favor haz lo siguiente:
1. Mantenga pulsado el ALT + F11 teclas para abrir el Ventana de Microsoft Visual Basic para Aplicaciones.
2. Luego elija su hoja de trabajo usada de la izquierda Proyecto Explorer, haga doble clic en él para abrir el Módulo, y luego copie y pegue el siguiente código VBA en el Módulo en blanco:
Código VBA: registra la fecha y la hora automáticamente cuando cambia la celda
Private Sub Worksheet_Change(ByVal Target As Range)
'Update 20140722
Dim WorkRng As Range
Dim Rng As Range
Dim xOffsetColumn As Integer
Set WorkRng = Intersect(Application.ActiveSheet.Range("B:B"), Target)
xOffsetColumn = 1
If Not WorkRng Is Nothing Then
Application.EnableEvents = False
For Each Rng In WorkRng
If Not VBA.IsEmpty(Rng.Value) Then
Rng.Offset(0, xOffsetColumn).Value = Now
Rng.Offset(0, xOffsetColumn).NumberFormat = "dd-mm-yyyy, hh:mm:ss"
Else
Rng.Offset(0, xOffsetColumn).ClearContents
End If
Next
Application.EnableEvents = True
End If
End Sub
3. Luego guarde y cierre este código para regresar a la hoja de trabajo, ahora cuando cambie el valor de la celda o escriba nuevos datos en la Columna B, la fecha y la hora se registrarán automáticamente en la Columna C.
Notas:
1. En el código anterior, puede modificar el "CAMA Y DESAYUNO”A cualquier otra columna en la que desee cambiar los valores de celda en este script: Establecer WorkRng = Intersect (Application.ActiveSheet.Range ("B: B"), Target).
2. Con esto xColumnaDesplazamiento = 1 script, puede insertar y actualizar la fecha y la hora en la primera columna junto a la columna de valor cambiante, puede cambiar el número 1 a otros números, como 2,3,4,5 ... eso significa que la fecha se insertará el segunda, tercera, cuarta o quinta columna además de la columna de valores modificados.
3. Cuando elimina un valor en la columna modificada, la fecha y la hora también se eliminarán.
Las mejores herramientas de productividad de oficina
Mejore sus habilidades de Excel con Kutools for Excel y experimente la eficiencia como nunca antes. Kutools for Excel ofrece más de 300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haga clic aquí para obtener la función que más necesita...
Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil
- Habilite la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
- ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!