Method: Roo::Excelx::Cell::Number#create_numeric

Defined in:
lib/roo/excelx/cell/number.rb

#create_numeric(number) ⇒ Object



16
17
18
19
20
21
22
23
24
25
26
# File 'lib/roo/excelx/cell/number.rb', line 16

def create_numeric(number)
  return number if Excelx::ERROR_VALUES.include?(number)
  case @format
  when /%/
    Float(number)
  when /\.0/
    Float(number)
  else
    (number.include?('.') || (/\A[-+]?\d+E[-+]\d+\z/i =~ number)) ? Float(number) : Integer(number)
  end
end