Method: Axlsx::DateTimeConverter.date_to_serial

Defined in:
lib/axlsx/workbook/worksheet/date_time_converter.rb

.date_to_serial(date) ⇒ Numeric

The date_to_serial method converts Date objects to the equivelant excel serialized forms

Parameters:

  • date (Date)

    the date to be serialized

Returns:

  • (Numeric)


11
12
13
14
15
# File 'lib/axlsx/workbook/worksheet/date_time_converter.rb', line 11

def self.date_to_serial(date)
  epoch = Axlsx::Workbook::date1904 ? Date.new(1904) : Date.new(1899, 12, 30)
  offset_date = date.respond_to?(:utc_offset) ? date + date.utc_offset.seconds : date
  (offset_date - epoch).to_f
end