excel宏复制行时受到限制

来源:百度知道 编辑:UC知道 时间:2024/05/09 20:02:58
宏是这样写的:
Sub 矩形1_单击()
Dim sumlines, lines, heads, x, k As Long
lines = 1
heads = 3
x = 0
k = 0
sumlines = Int([a65536].End(xlUp).Row + 1)
For i = lines + heads + k + 1 To sumlines Step lines + 1
Rows(i).Insert shift:=xlDown
Rows(heads).Copy Rows(i)
Next i
End Sub
我做了个EXCEL表格:http://excel.aa.topzj.com/thread-399111-1-1.html
执行里面的宏,只能复制部分表格,不能复制全部表格,请教懂行的大哥帮忙。
http://excel.aa.topzj.com/thread-399111-1-1.html
这里面是我在一个EXCEL论坛里面提的同一个问题,excel文件就放在附件里面。

问题可能在这儿:
sumlines = 2*[a65536].End(xlUp).Row + 1

因为你的步长是2,而你的sumlines却是根据没有插入行之前的行数计算出来的,所以刚好少一半。

For i = lines + heads + k + 1 To sumlines Step lines + 1

改成

For i = lines + heads + k + 1 To 2*sumlines Step lines + 1

sumlines = 2*[a65536].End(xlUp).Row + 1