Well, I do have my unshared methods of guarding against this sort of thing, but here's another idea that doesn't hurt to share.
You can forego being at the mercy of nefarious users, internal servers, and moody network admins, by getting the time yourself from an independent external source on the internet.
Just an idea, but something I cooked up for when some clients' employees get too creative with their system time settings. The macro below will place the current date and time in cell A1 of your Sheet2, taken from the US Navy clock. You can always reference your application to that.
The Navy being the Navy, their download format sometimes changes, but I just modified the formatting section of this macro today so it works fine. This macro adjusts for United States Pacific time, so you'd need to modify the 8 in this line
Range("B1").Formula = "=R1C1-TIME(8,,)"
to the hour you are set for wherever you are. I live in San Francisco, so my macro has an 8 for my local time, because California is 8 hours behind Greenwich. Note, I added a space in between HTML characters so delete those spaces if you copy this macro.
Sub TimeAfterTime()
With Application
.ScreenUpdating = False
.DisplayAlerts = False
.Calculation = xlCalculationManual
End With
Dim WebCopy As Object
Dim WebURL As String
Set WebCopy = Sheets("Sheet2")
WebURL = "http://tycho.usno.navy.mil/cgi-bin/timer.pl"
WebCopy.Activate
Cells.Clear
With WebCopy.QueryTables.Add(Connection:="URL;" & WebURL, Destination:=WebCopy.Range("A1"))
.BackgroundQuery = True
.TablesOnlyFromHTML = False
.Refresh BackgroundQuery:=False
.SaveData = True
End With
Range("1:2").EntireRow.Delete
Range(("A2"), Range("A2").End(xlDown)).EntireRow.Delete
With Range("A1")
.Replace What:=" < BR > ", Replacement:=""
.Replace What:="UTC", Replacement:=""
.Replace What:=".", Replacement:=""
.Replace What:=", ", Replacement:=", " & Year(Now) & " "
.Value = Trim(.Value)
.NumberFormat = "mmmm d, yyyy, hh:mm:ss"
End With
Range("B1").Formula = "=R1C1-TIME(8,,)"
Range("B1").Value = Range("B1").Value
Columns(2).AutoFit
Columns(1).Delete Shift:=xlToLeft
With Application
.ScreenUpdating = True
.DisplayAlerts = True
.Calculation = xlCalculationAutomatic
End With
End Sub