我需要声明一个相对于事件单元格的范围对象。问题是,每次宏运行时,我要选择的行数和列数都不同。
例如,我有两个变量:numRows
和numCols
。
我要选择一个区域,该区域的左上角有ActiveCell,单元格的右下方有ActiveCell.Row + NumRows行,而ActiveCell.Column + NumCols列在右下角(然后我打算将此数据复制到数组中)加快我的宏)。
有关如何执行此操作的任何建议?
最佳答案
Range类上有一个.Offset property,它允许您执行所需的操作ActiveCell.Offset(numRows, numCols)
跟进评论:
Dim newRange as Range
Set newRange = Range(ActiveCell, ActiveCell.Offset(numRows, numCols))
您可以通过
MsgBox newRange.Address
进行验证和here's how to assign this range to an array