class Excelgrip::RangeCursor

RangeCursor Class ==============

Public Instance Methods

delete(shift=nil) click to toggle source

undef delete

# File lib/excelgrip.rb, line 449
def delete(shift=nil)
  range_name = @raw_object.name
  parent_sheet = @raw_object.parent
  @raw_object.delete(shift)
  @raw_object = parent_sheet.range(range_name)
end
h_move(offset) click to toggle source
# File lib/excelgrip.rb, line 407
def h_move(offset)
  return(self) if offset == 0
  sheet = @raw_object.parent
  sign = (offset.abs / offset)  # +1 or -1
  offset.abs.times do
    v_pos, h_pos = position()
    h_pos += (h_size() * sign)
    h_pos = 1 if h_pos < 1
    next_top_cell = sheet.cells(v_pos,h_pos)
    next_bottom_cell = sheet.cells(v_pos + v_size() - 1, h_pos + h_size() -1)
    next_range = sheet.range(next_top_cell, next_bottom_cell)
    @raw_object = next_range
  end
  
  self.activate
  self
end
parent()
Alias for: range
range() click to toggle source

return Excel::Range object

# File lib/excelgrip.rb, line 443
def range()
  @raw_object
end
Also aliased as: parent
v_move(offset) click to toggle source
# File lib/excelgrip.rb, line 425
def v_move(offset)
  return(self) if offset == 0
  sheet = @raw_object.parent
  sign = (offset.abs / offset)  # +1 or -1
  offset.abs.times do
    v_pos, h_pos = position()
    v_pos += (v_size() * sign)
    v_pos = 1 if v_pos < 1
    next_top_cell = sheet.cells(v_pos, h_pos)
    next_bottom_cell = sheet.cells(v_pos + v_size() - 1, h_pos + h_size() -1)
    next_range = sheet.range(next_top_cell, next_bottom_cell)
    @raw_object = next_range
  end
  self.activate
  self
end