Mostrar en Excel la hora en que un empleado ingresa a la empresa
Excel también nos sirve para llevar el control de la hora en que ingresa o sale un trabajador de la empresa, control que se puede llevar fácilmente con una fórmula que nos permite hacer el trabajo.
Vamos a suponer que en la columna A ingresamos el nombre de los empleados de la empresa y en la columna B queremos tener la hora de entrada o salida, según sea nuestra necesidad.
Lo primero que debemos hacer es darle formato de hora a la columna B, que es la columna en la que necesitamos fijar la hora de entrada o salida del empleado. Para ello, seleccionamos la columna, damos clic con el botón derecho del mouse, y elegimos “Formato de celdas” y allí elegimos el formato de hora que más nos guste.
Ahora, en la columna B pegamos la siguiente fórmula:
=SI(A1="";"";SI(C1="";AHORA();C1))
Esta fórmula nos dará un error llamado “Referencia circular”, por lo tanto debemos habilitar el cálculo iterativo para solucionarlo [Siga el enlace para saber cómo].
Una vez habilitado el cálculo iterativo, la fórmula funcionará correctamente, y sólo bastará escribir el nombre del trabajador para que de forma automática aparezca la hora en la que se digitó el nombre.
No sobra aclarar que la hora que Excel tomará, es la hora en que se digita el nombre del trabajador en la celda, luego, si se pretende introducir los datos en una hora diferente a la que el trabajador ingresó, no servirá esta fórmula y será necesario digitar manualmente la hora.


Hola, podrian apoyarme con la formula, me marca error de sintaxis.
Muchas gracias por su apoyo.
Alguien encontro la solucion para que no cambie la hora en los demas.
Gracias
para ver donde poner la formula clic en boton secundario del raton en donde dice hoja1 te salen opciones ahi esta ver codigo
saludos y asta pronto
usa esta solucion da clic boton secundari del raton y tomas la opcion ver codigo cuando abra visual basic pones esta formula
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range(“A:A”)) Is Nothing Then
Range(“B” & Target.Row) = Date
Range(“C” & Target.Row) = Format(Now, “hh:mm”)
End If
End Sub
te queda poner los nombres que quieras en la coluna a y listo
veras hora y fecha en la b y c
buen dia a todos
estoy necesitando un liquidador de horas extras , donde solo ingrese la hora de entrada y la hora d e salida por dia y automaticamente liquide las horas extras diurnas nocturnas que diga cuantas diurnas cuantas nocturnas festivas etc..
les agradeceria si lo tienen me ayudaria mucho en mi trabajo mi correo es camiloandrestriana@hotmail.com
por favor si alguien sabe como se hace que para que no se modifique las horas al digitar un nuevo registro se los agradezco mucho
QUIERO SABER SI SE LE PUEDE RETENER INFORMACION A UN CLIENTE QUE NO HA PAGADO LOS HONORARIOS, IGUAL YA LE A DADO SU NUEVA INFORMACION A OTRO CONTADOR, QUE HACER EN ESTE CASO
Alguien encontró la solucion al problema…
ESTAS SON!!!!!!!!
FECHA =SI(A20;HOY();”")
HORA =SI(A20;AHORA();”")
OYE POR FA ESPERO TU AYUDA, LO QUE PASA ES QUE TODO FUNCIONA MUY BIEN, PERO CUANDO INGRESAMOS EL NOMBRE EN LA OTRA CASILLA SE CAMBIA LA HORA, ENTONCES ESO HACE QUE SE PIERDA TODO, TE AGRADEZCO SI SABES COMO HACER QUE SE QUEDE QUIETA Y LA HORA SEA DIFERENTE PARA CADA EMPLEADO
MUCHAS GRACIAS
Muy buena opción la que nos da Efraín pero tengo el mismo problema de la mayoría y otra pregunta: Que tiene que ver C1 en la primera formula???
al igual que los anteriores como se hace para que no se modifique la hora de los demas trabajadores
Urgente……
Ayuda urgente en esto
Apoyo a Glen, a medida que se registran nombres sigue apareciendo la hora del ultimo que entró en todos los anteriores, de que forma podemos fijar la hora en la que cada empleado ingresa sin que esta afecte a las anteriores?
Yo les propongo una más facil, como usted ya conoce los nombres de los empleados, para que repetirlos todos los dias. simplemente los pone en una columna, a medida que van llegando al frente les pone una “X” (EQUIS) en otra columna y en la tercera la formula que les propongo (esta columna se formatea
con el tipo de dato de fecha y hora que quieran). la hoja quedaria así:
(COL A) COL B)
NOMBRE EMPLEADO LLEGÓ HORA
Pedro Perez X =SI(B2=”X”;AHORA();”")
Jose Rdoriguez =SI(B3=”X”;AHORA();”")
nnn X =SI(B4=”X”;AHORA();”")
. X =SI(B5=”X”;AHORA();”")
.
.
zzz X =SI(Bzz=”X”;AHORA();”")
Así no se escriben nombes, admemás de evitar referencias circulares.
Saludos
PERO SIGUE REPITIENDO LA ULTIMA HORA DEL ULTIMO QUE ENTRO LO QUE NECESITAMOS ES QUE QUEDE LA HORA DE CADA UNO DIFERENTE SI ENTRO A OTRA HORA
Hola, buenos días, es muy prácita la función, pero quisiera que me ayudaran: resulta que al ingresar una persona el en la celda B1 me da la hora, tal como lo explica en el artículo, pero al ingresar otra persona en la celda B2 me modifica la hora del anterior; es decir la hora de la celda B1, lo que hice seguidamente con la columna y me iba colocando la hora actual de la celda inmediatamente anterior. Esto a qué se debe, cómo puedo editar esta función para que la hora de ingreso o salida quede fija y no se modifique, esto con el fin de llevar un rating y promedio y otras variantes a evaluar en un periódo determinado. En consecuencia, lo que quiero es que la hora que registra al momento de digitar el nombre quede y no se modifique al ingresar otro empleado en la celda siguiente. De antemano agradezco su colaboración.
Excelente, muy buen truco ete es el tipo de información que em gusta
HOLA, TE AGRADECERIA SI ME EXPLICAS COMO HACER PARA QUE NO SE CAMBIE LA HORA AL INGRESAR OTRO NOMBRE