请教excel 中的一段vba代码
实现的效果是:第一行数据移到了第十行,第二行移到了第二十行,第三行移到了第三十行,以此类推,第二十行数据移到了第200行,谢谢!...
实现的效果是:第一行数据移到了第十行,第二行移到了第二十行,第三行移到了第三十行,以此类推,第二十行数据移到了第200行,谢谢!
展开
4个回答
展开全部
sub test ()
dim arr,brr,x&,y&
arr=sheet1.usedrange ‘把原数据赋值给数组arr
redim brr(1 to ubound(arr)*10,1 to ubound(arr,2))'定义一个数组行数是arr的10倍
for x=1 to ubound(arr)
for y=1 to ubound(arr,2)
brr(x*10,y)=arr(x,y)
next y
next x
sheet1.range("A1").resize(ubound(brr),ubound(brr,2))=brr'把新数组写入工作表中
end sub
dim arr,brr,x&,y&
arr=sheet1.usedrange ‘把原数据赋值给数组arr
redim brr(1 to ubound(arr)*10,1 to ubound(arr,2))'定义一个数组行数是arr的10倍
for x=1 to ubound(arr)
for y=1 to ubound(arr,2)
brr(x*10,y)=arr(x,y)
next y
next x
sheet1.range("A1").resize(ubound(brr),ubound(brr,2))=brr'把新数组写入工作表中
end sub
展开全部
你的问题,必须把第一行数据移动第二张工作表中,否则第十行的数据会冲突!
Sub temp()
Dim val
Dim intCol As Integer
Dim intRow As Integer
Dim i, j As Integer
'
With Sheets("Sheet1")
intCol = .Cells(1, 1).End(xlToRight).Column
intRow = .[a65536].End(xlUp).Row
For i = 1 To intRow
For j = 1 To intCol
Sheets("Sheet2").Cells(i * 10, j) = .Cells(i, j)
Next j
Next i
Sheets("Sheet2").Cells(i * 10, j) = .Cells(i, j)
End With
End Sub
Sub temp()
Dim val
Dim intCol As Integer
Dim intRow As Integer
Dim i, j As Integer
'
With Sheets("Sheet1")
intCol = .Cells(1, 1).End(xlToRight).Column
intRow = .[a65536].End(xlUp).Row
For i = 1 To intRow
For j = 1 To intCol
Sheets("Sheet2").Cells(i * 10, j) = .Cells(i, j)
Next j
Next i
Sheets("Sheet2").Cells(i * 10, j) = .Cells(i, j)
End With
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Sub m()
For i = Cells(1, 1).End(xlDown).Row To 1 Step -1
Rows(i).Select
Selection.Cut
Rows(i * 10).Select
ActiveSheet.Paste
Next i
End Sub
For i = Cells(1, 1).End(xlDown).Row To 1 Step -1
Rows(i).Select
Selection.Cut
Rows(i * 10).Select
ActiveSheet.Paste
Next i
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询