Actualizar automáticamente la celda en Excel con la marca de tiempo actual cuando se cambia otra celda


11

En una hoja de cálculo de Excel, me gustaría actualizar automáticamente una celda con la fecha y hora actuales cuando se cambia otra celda (como una marca de tiempo de actualización).

Hay una marca de tiempo para cada fila. Me gustaría actualizarlos tan pronto como se actualice una de las celdas anteriores de la fila.

¿Tienes alguna sugerencia sobre cómo hacer eso?



@Raystafarian: Tenemos engaños circulares. Esta es la pregunta anterior. Si ambos se cierran, bloquearemos todas las respuestas nuevas.
fijador1234

Respuestas:


9

Cree una celda con el valor Now (). Formatee como desee, como aaaa / mm / dd HH: mm: ss para una marca de tiempo completa en 24 horas.

Ahora, siempre que se configure el recálculo automático (el valor predeterminado), cada vez que se cambie otra celda, obtendrá una nueva marca de tiempo.

Tras una reflexión adicional, si desea una marca de tiempo codificada, que solo se actualiza mediante acciones que no incluyen cosas como abrir el libro de trabajo, imprimir, etc., puede crear una macro adjunta a worksheet_change. Establezca la celda de destino como texto, con un formato específico como antes. Use algo como: Sheet1.Cells []. Value = Text (Now (), "aaaa / mm / dd HH: mm: ss") en el evento Worksheet_Change.

Si coloca esto en una plantilla que se carga al inicio, nunca tendrá que pensarlo nuevamente.


+1 Me gusta la segunda respuesta mejor que la primera.
DaveParillo

He actualizado la pregunta para reflejar mejor la necesidad: hay una marca de tiempo para cada fila. Me gustaría actualizarlos tan pronto como se actualice una de las celdas anteriores de la fila. Así que creo que se necesita una macro aquí, como mencionaste. Buscaré de esa manera. Gracias.

Cabe señalar que poner código en el evento Worksheet_Change () hará que Excel elimine la pila de deshacer cada vez que se ejecute. Entonces, si está actualizando valores en otra parte de la hoja, esta solución esencialmente deshabilitará deshacer para esta hoja de trabajo como efecto secundario.
Ross McConeghy

8

http://chandoo.org/wp/2009/01/08/timestamps-excel-formula-help/ tiene detalles sobre cómo implementar marcas de tiempo usando la fórmula recursiva. Trabajan de maravilla.

El artículo describe cómo activar primero la fórmula circular (desactivada de manera predeterminada) y luego cómo crear una fórmula circular que inserte automáticamente una marca de tiempo cuando una celda específica tiene un valor insertado.

Si la celda que contiene la marca de tiempo es B3 y la celda a observar es C3, la fórmula es:

=IF(C3<>"",IF(B3="",NOW(),B3),"")

Es decir, cuando C3 no está vacío, configure B3 como AHORA () (si B3 estaba vacío), de lo contrario, el valor actual de B3.

Esto parece estable sobre actualizaciones y guardados.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.