sábado, 25 de octubre de 2014

Captura la hora de inicio,fin y la diferencia de tiempo de un proceso

Hace unos días, una alumna me preguntó como poder realizar la captura de inicio de un proceso y capturar el fin del mismo en Excel.

En ese momento, no tenía ni la mas mínima idea de como hacerlo, y además me encontraba con bastante trabajo.

Sin embargo, ante la insistencia de la pregunta, decidí darme un tiempo para investigar y esto fue lo que encontré:

Paso 1: Primero creamos la siguiente tabla:


Paso 2: Clic derecho en el etiqueta con el nombre de la hoja y entramos a la opción de Ver código

Paso 3: Copiamos el siguiente código:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

FActual = ActiveCell.Row
If Union(Range("B" & FActual), Target).Address = Range("B" & FActual).Address Then
    Range("B" & FActual) = Time
End If

If Union(Range("C" & FActual), Target).Address = Range("C" & FActual).Address Then
    Range("C" & FActual) = Time
    If Range("B" & FActual) <> Empty Then
        Range("D" & FActual) = Range("C" & FActual) - Range("B" & FActual)
        Range("D" & FActual) = Format(Range("D" & FActual), "hh:mm:ss")
    End If
End If

End Sub

Y listo!!!!

Cada vez que hagan clic en una celda de la columna B, captura la hora en que hicieron clic.

Luego cuando hagan clic en la celda de la columna C, de la misma fila, captura la hora y calcula la diferencia de los tiempos.


Espero que les sirva esta publicación.

Saludos

Ing. Enrique Neciosup Morales