增加范围尺寸

时间:2012-12-18 21:16:25

标签: excel-vba excel-2007 excel-2010 vba excel

我有一个引用范围D3:I23的命名范围,并且这个范围是为某些自动化目的而定义的。

最近我有一个更新,要求我将此范围重新定义为F3:I23,并最初排除列D& E。但是在各种逻辑编码中,我需要包含E进行评估(将动态数据转换为静态数据)。

考虑使用Resize,但似乎没有。也考虑Offset,但这会使整个范围向前或向后移动。我基本上需要将范围调整回1列,同时保留原始定义的范围

本质上,我需要将命名范围定义为F3:I23,但在这一段代码段中,我需要将范围评估为E3:I23

在VBA中使用的任何想法或Range属性的组合?在我传递引用时,它被存储在Range对象中,因此任何链接的属性集都是合理的游戏。

请在回答时尝试应用KISS政策。不需要是一个过于复杂的公式,因为我不能保证支持最终结果。

1 个答案:

答案 0 :(得分:4)

正如Rachel所指出的......这应该是假设您的命名范围被定义为namedRange:

Set neededRange = namedRange.Resize(namedRange.Rows.Count, _
              namedRange.Columns.Count + 1).Offset(0, -1)

调整大小以将包含的列增加1,然后将整个范围偏移-1列以获得neededRange