其实用拉也很快的,只要掌握技巧就行了。
插入一列辅助列,输入1、2、3、4,选中,双击 右下角的填充柄 向下填充
点击出现的填充选项,选择复制
就变成12341234填充
再按该列排序
找到4行的第一行选中,按Ctrl+Shit+↓,就会快速选中下面的所有行,类似的还有←、→、↑
复制——粘贴。
完成。
后注:没仔细看搞错了,是复制3行,不过操作差不多。
EXCEL理论上能处理的最大行数是1048576行。实际上你的表格超过4万行,运行时电脑会非常卡的,不可能 处理几百万行的资料。
下面是我不管你多少行,我将Sheet1的1~3、7~9...等行复制到Sheet2表格中的程序:请你按Alt+F11,打开VBA编辑器,插入一个模块,把下面的代码打入去,如果粘贴进去的,请你将多余的内容删除,按F5执行即可
Sub 宏1()
Dim lastrow As Long, i As Long, j As Long
i = 1 'Sheet1从第一行开始
j = 1 'Sheet2也从第一行开始
Sheets("Sheet1").Select '选择Sheet1
lastrow = Cells(Rows.Count, 1).End(3).Row '检查Sheet1有多少行
Do While i < lastrow '未到最后 一行则循环
Sheets("Sheet1").Select '选择Sheet1
Range(Rows(i), Rows(i + 2)).Select '选择三行
Selection.Copy '复制
Sheets("Sheet2").Select '选择Sheet2
Cells(j, 1).Select '选择粘贴位置
ActiveSheet.Paste '粘贴
i = i + 6 'Sheet1下移6行
j = j + 3 'Sheet2下移3行
Loop '循环
End Sub
Sub ss()
Dim i%, r%
Sheets("Sheet1").Cells.Copy
Sheets("Sheet2").Select
ActiveSheet.Paste
r = Range("a65536").End(xlUp).Row / 2 + 1
For i = 1 To r Step 3
Rows(i & ":" & i + 2).Delete Shift:=xlUp
Next
End Sub
sub copyThreeRow()
'设置目标新表单储存位置
lastRow=1
'遍历原表行
for i=1 to Sheet1.[a100000].end(xlup).row
if i mod 6=1 then
Sheet1.cells(i,1).resize(3,).entirerow.copy Sheet2.cells(lastRow+1,1)
lastRow=lastRow+3
end if
next i
用公式做可以的。