This is another situation where circular references are very useful.
When you say non recalculation, do you really mean that the even when nothing is happening to the sheet, the clock will just show continuous current time? This is doable with a continuous loop. I have not tried it, but suspect Excel may become unresponsive
and fully preoccupied with updating the clock.
If you want to get an update every time there is an event, then this can be very easily done.
| A |
B |
C |
D |
E |
F |
G |
| 1 |
FALSE |
user1 |
= IF($B$3,0,IF(C3<>G3,2,0)) |
=IF($B$3,0,MIN(D3,E3+1)) |
=IF($B$3,0,IF(E3=1,F3+1,F3)) |
=IF($B$3,0,IF(E3=1,C3,G3)) |
| 2 |
Start time |
=IF(E3=1,C5,C4) |
= IF($B$3,0,IF(C5<>G4,2,0)) |
=IF($B$3,0,MIN(D4,E4+1)) |
|
=IF($B$3,0,IF(E4=1,C5,G4)) |
| 3 |
Now |
=TEXT(NOW(),"hh:mm:ss") |
|
|
|
|
|
|
|
|
|
|
|
FILE>OPTIONS>FORMULAS>calculation options>enable iterations needs to be selected.
B1 is a reset, TRUE to reset, FALSE to run
C2 is the only input, a new user signs on (perhaps from another sheet, and times in C2 and C3 can report to that same sheet too). So this can become =sheet1!A1 if the user inputs the name there for example.
Every time a new user signs on, there is a new start time in B2. Every time there is an input or a change anywhere in the workbook, or it is opened or saved (provided the workbook is set to auto recalc), the current time in C3 updates itself.
This entire sheet can be hidden and locked away in the background.
Far more typing than using VBA clearly, but an alternative if there is a need to not use VBA.