|
用下边代码,替换原代码。
Sub 生成表格()
On Error Resume Next
Application.ScreenUpdating = False
m = Sheet1.[a65536].End(3).Row
arr = Sheet1.Range("a1:j" & m + 10)
Rows("18:" & [a65536].End(3).Row + 2).Delete
If UBound(arr) Mod 10 = 0 Then
p = m \ 10 - 1
Else
p = m \ 10
End If
lie = 10 ''lie指列数 在这里修改列数,如:lie = 8或lie = 10或lie = 15或lie = 18等. 上行的p是页数
ReDim brr(1 To 10, 1 To lie) ''原代码右边的10指列数
For i = 1 To p
Rows("1:17").Select
Selection.Copy
Range("A" & i * 18 + 1).Select
ActiveSheet.Paste
Range("A" & i * 18 + 6).Resize(10, lie).ClearContents ''''原代码Resize(10, 10)右边的10指列数
Next
For i = 0 To p
For j = 1 To 10
For k = 1 To lie '''''原代码For k = 1 To 10 右边的10指列数
brr(j, k) = arr(i * 10 + j, k)
Next
Next
Range("A" & i * 18 + 6).Resize(10, lie) = brr '''原代码Resize(10, 10)右边的10指列数
Next
Range("a4").Select
Application.ScreenUpdating = True '页面刷新
End Sub |
评分
-
3
查看全部评分
-
|