【发布时间】:2017-05-16 20:40:55
【问题描述】:
我有多行数据,我试图在其中创建另一行并将 F 列逐行放入新的 D 列。我已经设置了创建新行宏,但是我怎样才能有一个循环将单元格从 F 复制到 D 中的新行?
基本喜欢:
Range("F3").Select
Selection.Cut
Range("D4").Select
ActiveSheet.Paste
每隔一行。
所以就像下一个将“F5”放入“D6”一样,并继续这个直到工作表的末尾。
【问题讨论】:
我有多行数据,我试图在其中创建另一行并将 F 列逐行放入新的 D 列。我已经设置了创建新行宏,但是我怎样才能有一个循环将单元格从 F 复制到 D 中的新行?
基本喜欢:
Range("F3").Select
Selection.Cut
Range("D4").Select
ActiveSheet.Paste
每隔一行。
所以就像下一个将“F5”放入“D6”一样,并继续这个直到工作表的末尾。
【问题讨论】:
您可以使用For 循环,使用Step 2 跳过两个单元格:
Sub copyMove()
Dim lastRow As Long, i As Long
Application.ScreenUpdating = False
lastRow = Cells(Rows.Count, 6).End(xlUp).Row
For i = 3 To lastRow Step 2
Cells(i + 1, 4).Value = Cells(i, 6).Value
Cells(i, 6).Value = ""
Next i
Application.ScreenUpdating = True
End Sub
(假设您只需要这些值。如果您需要一个公式,那么它需要稍微调整,所以请告诉我)。
【讨论】: