Недавно я обнаружил, что это, кажется, происходит только в документах Office 2007 (для других типов файлов значение представляет собой стандартный формат строки для даты). Ответ в том, что шестнадцатеричное значение представляет количество тиков с 01.01.16. Вот преобразование, которое работало для меня:
Dim dateVal as DateTime = New DateTime (Long.Parse (dateText.Replace ("0x", "") .Replace ("|", ""), System.Globalization.NumberStyles.HexNumber)). AddYears (1600 )