【发布时间】:2012-02-13 09:08:31
【问题描述】:
以下代码搜索、复制并粘贴找到的数据到另一个工作表中。但是,在粘贴的工作表中完成此操作时会出现空白。例如:在单元格 A1 中找到“待复制”并将整行复制到指定的工作表中。在 A4 中找到“待复制”并将整行复制到指定的工作表中。但是,在 A1 和 A4 之间粘贴的工作表中有两个空白行。感谢您的帮助。
Sub Deleting()
Application.ScreenUpdating = False
Dim wsh As Worksheet, i As Long, Endr As Long, x1 As Worksheet, p As Long
Set wsh = ActiveSheet
Worksheets.Add(Before:=Worksheets("Original Sheet")).Name = "Skipped"
Set x1 = Worksheets("Skipped")
Worksheets("ABC").Activate
i = 2
Endr = wsh.Range("A" & wsh.Rows.Count).End(xlUp).Row
While i <= Endr
If Cells(i, "A") = "To Be Copied" Then
wsh.Rows(i).Copy
x1.Rows(i).PasteSpecial
p = p + 1
Endr = Endr + 1
End If
i = i + 1
Wend
End Sub
【问题讨论】:
-
正确缩进你的代码会让每个人(包括你自己)更容易阅读和理解你的代码。这次我为你做了。
-
@Jean-FrançoisCorbett Corbett 谢谢,下次会记住这一点:)
标签: excel excel-2007 vba