select多个dynamic范围没有联合

我需要select多个范围(“B1:D”和n + 2),每三列(“AI1:AK”和n + 2),共计12个范围。 我不想使用union,因为我需要在每个边框周围添加边框(而union会在所有边框的边缘添加边框),但我似乎无法select所有的范围。

有没有办法,我可以select所有的范围,而不使用联合?

您可以使用Range("A1:A2, C2:D4")来处理多个范围。

对于你的例子尝试像这样的:

 Sub PickMultipleAreas() Dim n As Long n = 2 With ActiveSheet .Range("B1:D" & n + 2 & "," & _ "AI1:AK" & n + 2).BorderAround ColorIndex:=3, Weight:=xlThick End With End Sub 

有关这个概念的更多信息,以及我为取消select重叠范围所写的工具,请参阅:http: //yoursumbuddy.com/undo-selections-selectracker/

For Next循环将做的伎俩:

 For i = 2 to 35 Step 3 Range(Cells(1, i), Cells(n + 2, i + 2)).BorderAround 'your criteria here Next i 

或使用Offset()

 For i = 0 to 11 Range("B1:D" & n + 2).Offset(0, i * 3).BorderAround 'your criteria here Next i 

两个testing工作。