private static ExcelRange AdjustRangeSize(this ExcelRange range, IListObjectDataObject data) { Range topLeft = range.GetLeftTopCell().GetInteropVersion(); var columnAbsoluteIndex = topLeft.Column; var rowAbsoluteIndex = topLeft.Row; var columnsWide = data.HeaderValues.Length; var rowsHeight = data.DataValues.GetLength(yLengthIndex); Range bottomRight = topLeft.Worksheet.Cells[rowAbsoluteIndex + rowsHeight + NumberOfHeaders - 1, columnAbsoluteIndex + columnsWide - 1]; // -1 reason one base return(new ExcelRange(topLeft.Worksheet.get_Range(topLeft, bottomRight))); }
private static ExcelRange ExtendRangeSize(this ExcelRange range, int extendRows, int extendColumns) { var rangeInteropVersion = range.GetInteropVersion(); Range topLeft = range.GetLeftTopCell().GetInteropVersion(); var columnAbsoluteIndex = topLeft.Column; var rowAbsoluteIndex = topLeft.Row; var columnsWide = rangeInteropVersion.Columns.Count + extendColumns; var rowsHeight = rangeInteropVersion.Rows.Count + extendRows; Range bottomRight = topLeft.Worksheet.Cells[rowAbsoluteIndex + rowsHeight - 1, columnAbsoluteIndex + columnsWide - 1]; // -1 reason one base return(new ExcelRange(topLeft.Worksheet.get_Range(topLeft, bottomRight))); }
public static ExcelRange GetRangeForSize(this ExcelRange range, int numberOrRows, int numberOfColumns) { Range topLeft = range.GetLeftTopCell().GetInteropVersion(); return(range.ExtendRangeSize(numberOrRows - 1, numberOfColumns - 1)); }
public static ExcelRange GetColumnsFromRange(this ExcelRange range, int startcolumn, int endColumn) { var startrange = range.GetLeftTopCell().GetSingleCellByOffset(0, startcolumn - 1); return(startrange.ExtendRangeSize(range.GetInteropVersion().Rows.Count - 1, endColumn - startcolumn)); }