求VBA代码:将Sheet1固定区域复制到Sheet2并间隔5行粘贴
VBA实现固定区域间隔多行复制
需求说明
将Sheet1中固定区域A1:M45(共45行)的内容复制到Sheet2,粘贴位置从A5:M5开始,每间隔5行粘贴一次,依次为A5:M5、A10:M10、A15:M15……直至A225:M225。
修改后的VBA代码
Sub CopyRangeWithInterval() Dim wsSource As Worksheet Dim wsTarget As Worksheet Dim i As Long Dim targetRow As Long ' 定义源工作表和目标工作表 Set wsSource = ThisWorkbook.Worksheets("Sheet1") Set wsTarget = ThisWorkbook.Worksheets("Sheet2") ' 循环处理源区域的45行 For i = 1 To 45 ' 计算目标行:第i行对应目标的5*i行 targetRow = 5 * i ' 将源行的A-M列值直接赋值到目标行的对应区域 wsTarget.Range("A" & targetRow & ":M" & targetRow).Value = _ wsSource.Range("A" & i & ":M" & i).Value Next i End Sub
代码说明
- 直接通过Value属性赋值,比传统复制粘贴更高效,避免剪贴板占用
- 固定循环45次,精准覆盖Sheet1的A1:M45所有行
- 目标行计算逻辑为
5 * i,刚好对应5、10、15…225的间隔位置(45×5=225) - 明确指定A-M列的区域范围,解决原代码仅支持单列的问题
内容的提问来源于stack exchange,提问作者Mauro
相关产品推荐
相关产品推荐

