我有一张包含包含边框的信息行的表格。我的信息在sheet2的第1行到第3行。我想制作一个宏来将这些信息复制到sheet3上,然后将其粘贴到sheet3上的row1中,然后粘贴到sheet3上的row4中,然后粘贴到sheet2上的row8中,然后在工作表上再进行相同的操作并将其一遍又一遍地复制,直到我拥有了我在sheet1上的单元格C5中指定的正确副本数量。因此,如果我在sheet1上的单元格C5中有 x ,我希望能够将包含边界的信息行粘贴到sheet3 x 次。我对VBA有基本的了解,并查看了其他示例,但无法解决如何执行此操作并保留边框。
我希望这是一个有意义的解释。这可能吗?
谢谢Greg
答案 0 :(得分:0)
试试这个
注意:
更改工作表2上的复制区域:FIRST_ROW,FIRST_COL,TOTAL_ROWS和TOTAL_COLS
Cell C5预计将在Sheet 1
每次运行此宏时,都会删除工作表3
为了让它更短,很难阅读,但如果有兴趣我可以提供详细信息
Option Explicit
Public Sub copyRange()
Const FIRST_ROW As Long = 1: Const TOTAL_ROWS As Long = 3
Const FIRST_COL As Long = 1: Const TOTAL_COLS As Long = 3
Dim totalCopies As Long, i As Long, sh As Worksheet
Application.ScreenUpdating = False
Sheets("Sheet3").Cells.Delete
totalCopies = Sheets("Sheet1").Range("C5").Value2
With Sheets("Sheet2") 'COPY
.Range( _
.Cells(FIRST_ROW, FIRST_COL), _
.Cells(FIRST_ROW + TOTAL_ROWS - 1, TOTAL_COLS) _
).Copy
End With
For i = 1 To totalCopies 'PASTE * value in C5
Sheets("Sheet3").Cells(((TOTAL_ROWS + 1) * (i - 1)) + 1, FIRST_COL).PasteSpecial
Next
With Application
.CutCopyMode = False
.ScreenUpdating = True
End With
End Sub