这是一个简单的问题。 例如,我有行(1)行(3),我可以将它们合并到相同的范围内。我可以粘贴它们但是我无法插入它们!
答案 0 :(得分:1)
您需要使用Range.Areas property。区域是构成Union的连续行。
Sub insertAreas()
Dim a As Long, rng As Range
Set rng = Union(Rows(1), Rows(3))
For a = rng.Areas.Count To 1 Step -1
rng.Areas(a).Copy
Rows(10).Insert Shift:=xlDown
Next a
End Sub
我已经颠倒了复制/插入的顺序以维持原始顺序。
答案 1 :(得分:0)
希望我明白你的意思。 Excel只能插入继续复制的行。此规则不仅适用于Excel,也适用于VBA。
我建议您使用selection.count/32768
来获取所选行数。然后你编写一些代码来插入行数然后粘贴选择而不是直接插入。
说,如果要将第1行和第3行复制到第5行。
你可以
set myRng=Range("1:1,3:3")
runNum=myRng.count / 32768
for i = 1 to runNum
rows(5).insert
next
myRng.copy rows(5)