我有一张工作表,其中包含带有边框的信息行。我的信息在sheet2的第1至3行中。我想制作一个宏来将该信息复制到sheet3上,然后将其粘贴到sheet3上的row1中,然后粘贴到sheet3上的row4中,然后粘贴到sheet2上的row8中,然后再在工作表的下方进行同样的操作,并一遍又一遍地复制它,直到获得我在sheet1的单元格C5中指定的正确份数。因此,如果在sheet1的单元格C5中有x,我希望能够将包括寄宿生在内的信息行粘贴到sheet3上x次。我对VBA有基本的了解,并且看过其他示例,但无法弄清楚如何做到这一点并保留边界。
我希望这是一个有意义的解释。这可能吗?
谢谢格雷格
尝试这个
笔记:
更改工作表2上的复印区域:FIRST_ROW,FIRST_COL,TOTAL_ROWS和TOTAL_COLS
单元格C5预计将在工作表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
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句