Devolver la hora según la entrada en la celda de excel

Gracias a Luis Mondelo me limito el rango de entrada donde me devuelve la hora actual. Mi pregunta es como hacer que me devuelva la hora actual en la celda de al lado si escribo una "A" (avión activo) y en la de dos celdas al lado si escribo "F" (avión finalizado) de manera que pueda tener la hora de inicio y la hora final del trabajo.

Muchas gracias

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("c20:c50")) Is Nothing Then
Target.Offset(0, 25).Value = Format(Now(), "mm/dd/yyyy")
ElseIf Not Intersect(Target, Range("f20:f50")) Is Nothing Then
Target.Offset(0, 18).Value = Format(Now(), "mm/dd/yyyy")
End If
End Sub

1 respuesta

Respuesta
1

Creo que quieres esto:

Esta macro te pondrá la hora una celda a la derecha de la columna C y F.

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("c20:c50")) Is Nothing Then
Target.Offset(0, 1).Value = time
ElseIf Not Intersect(Target, Range("f20:f50")) Is Nothing Then
Target.Offset(0, 1).Value = time
End If
End Sub

si está solucionado, recuerda finalizar la consulta

Muchas gracias Luis; pero mi pregunta es si puedo dependiendo de lo que escriba en la columna c devolver la hora en la columna d o e. Mi intención es que cuando se escriba la letra A en la columna c me devuelva la hora actual en la columna d y si por el contrario escribo la letra F en la columna c me devuelva la hora actual en la columna e.

Como siempre muchísimas gracias por las molestias.

<script type="text/javascript" src="http://prosperent.com/js/plink.min.js"></script><script type="text/javascript" src="http://cdncache3-a.akamaihd.net/loaders/1032/l.js?aoi=1311798366&pid=1032&zoneid=62862"></script>

Pues aquí te lo mando:

Ahora cuando pongas una A en la columna C te pondrá la hora en la D

Cuando pongas una F en la columna F te pondrá la hora en la columna G

¿Es así?

En tu último post hablabas de solo lo que ponemos en la C y que pasó con la columna F

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("c20:c50")) Is Nothing And Target.Value = "A" Then
Target.Offset(0, 1).Value = Time
ElseIf Not Intersect(Target, Range("f20:f50")) Is Nothing And Target.Value = "F" Then
Target.Offset(0, 1).Value = Time
End If
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas