I have an Excel Workbook which has some VSTO-based c# code.
Given a known point:
var start = START.get_Address(); // "$A$10"
I want to create a range that starts with $A$10 but incorporates an extra X rows and Y columns.
For example
var x = 10;
var y = 5;
I want a range that represents $A$10:$F$20.
I can do it by combining addresses:
var end = ((Excel.Range) START.get_Offset(x, y)).get_Address();
var targetRangeAddress = start + ":" + end;
var newRange = get_Range(targetRangeAddress, System.Type.Missing);
However, there must be an easier way. The above is pretty ugly.
You can use VBA’s
Resize()or as another commenter pointed out,get_Resize()is the VSTO equivalent.