I'm not sure what you are trying to do. But here are a few examples.
Suppose I have the following range:
Excel.Worksheet sheet = this.Application.ActiveSheet as Excel.Worksheet; Excel.Range range = sheet.get_Range("A1", "B5") as Excel.Range;
To move your range down to n -number lines:
int n = 1; int rows = range.Rows.Count; int cols = range.Columns.Count; Excel.Range newRange = range.get_Offset(n, 0).get_Resize(rows-n,cols); newRange.Select();
Move bottom row up
Excel.Range newRange = range.get_Resize(rows-n,cols); newRange.Select();
I assume that you can understand how to move it from side to side.
get_Offset() will move the entire range, and then you need to resize the range.
EDIT: Now that I know what you want.
To select the last cell:
Excel.Range lastCell = range.Cells[rows, cols] as Excel.Range; lastCell.Select();
Now you can use your own starting point like this:
Excel.Range newRange = sheet.get_Range("B1", lastCell); newRange.Select();
source share