By using t2do.com you agree to our cookie policy, We and our partners operate globally and use cookies, for multiple purposes

 


Time Tracking

This sheet and code supports tracking your time every 15 mins.

Sheet Name: 15 Min

Columns
A: Date/Time
B: What
C: G (Goal) 1 for yes
D: EE (exceeds Expectations 1, 0, -1)
E: Blan
F: fup (follow up - 1)
G: Notes

Use Cases

Shows that code is running by displaying caption cycling every second from -| to |-.

Run - Starts the process running

Stop - Alt+F11 and press Stop (future) stop button

Get Input - Each 15 minutes sheet will pop up so tat user can enter what they did the last 15 mins.

Auto enter - future to detect what user did in 15 mins based on the caption, when they were typing, etc.

Auto Save - Every 15 mins the sheet is saved

Version (Future) make sure backups are kept in case the current save corrupts the sheet.

I'm Alive (Future) some way to indicate to another monitoring process that the tracking is active and to send out an email to your phone if it's not.

Code
Sub Tracking_loop()
Application.Statusbar = "last check " & Now()
Application.Caption = ""

Do
    sCur = ActiveSheet.Name
    lMin = Format(Now(),"n")
    If lMin = 0 or lMin = 15 or lMin = 30 or lMin = 45 Then
        ThisWorkbook.Activate
        Sheets("15 Min").Select
        r = FindLastRow(1)
        If format(now(),"n") = Format(Cells(r, 1),"n") Then
            Delay 10
            Sheets(sCur).Select
            GoTo next_loop
        end if
        Application.WindowState = Maximized
        'todo: Make topmost window
        Cells(r + 1, 1) = Now()
        Cells(r + 1, 2).Select
        ActiveWorkbook.Save
        Delay 25
    Else
        Delay 30
    End If
next_loop:
    DoEvents
    Application.Statusbar = "last check " & Now()
Loop

End Sub