我们中的一些人提出了很简单的方法来定义一组列 Excel VBA,例如:
.Union(Columns("a"), Columns("b"), Columns("d"))
这些示例使用字母来表示这些列。 我需要使用数字来引用我的列,例如:
.Union(Columns(2), Columns(7), Columns(23)).
后者的效果很好但是如果我需要使用一系列列来引用列,例如:
.Union(columns(2), columns(7), columns(9 to 23))
我的想法是,我不必单独为每个列定义.Union,在本示例中,需要列出17列(x)。
不是优雅的代码。此外,我需要使用数字,因为列号是以编程方式确定的,并且在执行期间会发生变化。
感谢您的投入。干杯
答案 0 :(得分:1)
您需要使用RANGE():
.Union(.columns(2), .columns(7), .Range(.columns(9), .columns(23)))
答案 1 :(得分:0)
set MyRange = worksheets("mySheet").range( columns(1), columns(5) )
效果很好。
它实际上选择了从第1列到第5列的一系列列
此外,我可以使用联盟加入其他单一栏目。