如何设置当时所选单元格的范围

时间:2017-02-08 01:36:13

标签: excel vba range selection

我试图设置一系列已经选择的单元格是否有办法实现呢?

    Range("e2").Select
    Range(Selection.End(xlToRight), Selection.End(xlDown)).Select
    Range(Selection, Selection.End(xlToLeft)).Select
    Range(Selection, Selection.End(xlToRight)).Select
    Set temprange = activeselection

我必须选择这种方式,因为在工作表中所有列中都没有数据,但在E中它必须和数据从第2行开始它工作正常但我需要将其设置为一个范围其他通过过滤器。

Activeselection太容易了所以我应该知道它不会那样工作.. 这样做的正确方法是什么?谢谢

2 个答案:

答案 0 :(得分:2)

如果要引用已选择的单元格,只需使用选择参考:

Set temprange = Selection

请注意,通常最好避免在可能的情况下使用VBA中的选择并使用范围进行简单的工作。您可以将代码重写为不适用于选择:

Set temprange = Range(Range("E2").End(xlToRight), Range("E2").End(xlDown))
Set temprange = Range(temprange, temprange.End(xlToLeft))
Set temprange = Range(temprange, temprange.End(xlToRight))

您还可以使用偏移量进一步简化此操作,以自动在右侧添加2个附加列。有关如何在VBA中引用范围的更多详细信息,请参阅以下文章:

https://msdn.microsoft.com/en-us/library/office/gg192736(v=office.14).aspx

答案 1 :(得分:0)

选项是提供此选项以选择用户的范围,当前选择已填充为默认值:

count
相关问题