excel vba date to timestamp code example

Example 1: excel vba date to unix timestamp and vice versa

'VBA functions to convert between Excel and Unix date-times.

'These work on Windows and optionally the Mac:

Function UnixDateTime#(ExcelDateTime As Date, Optional Mac As Boolean)
    Dim OSOffset: OSOffset = IIf(Mac, 24107, 25569)
    UnixDateTime = (ExcelDateTime - OSOffset) * 86400
End Function
         
Function ExcelDateTime(UnixDateTime#, Optional Mac As Boolean) As Date
    Dim OSOffset: OSOffset = IIf(Mac, 24107, 25569)
    ExcelDateTime = (UnixDateTime / 86400) + OSOffset
End Function

Example 2: vba date to unix timestamp

'VBA functions to convert between Excel and Unix date-times.

'These work on Windows and optionally the Mac:

Function UnixDateTime#(ExcelDateTime As Date, Optional Mac As Boolean)
    Dim OSOffset: OSOffset = IIf(Mac, 24107, 25569)
    UnixDateTime = (ExcelDateTime - OSOffset) * 86400
End Function
         
Function ExcelDateTime(UnixDateTime#, Optional Mac As Boolean) As Date
    Dim OSOffset: OSOffset = IIf(Mac, 24107, 25569)
    ExcelDateTime = (UnixDateTime / 86400) + OSOffset
End Function

Tags:

Vb Example