2014-09-10 52 views
0

如果H列有空单元格,则将该单元格所在的整行复制到新工作表中,行可以有任何数量的行,所以希望这个复制通过每一行请。Excel - 如果H列有空白,则将第1张表格中的此行复制到第2张表格中的下一个可用行

SHEET1会有这种可能,但数百/千多个行:

...一个.....乙..... C ...... d ......Ë ...... ......˚F.....ģħ

数据数据数据数据数据数据数据数据

数据数据数据数据数据数据数据数据

数据数据数据数据数据数据数据

数据数据数据数据数据数据数据dat一个数据

数据数据数据数据数据数据数据数据

数据数据数据数据数据数据数据

数据数据数据数据数据数据数据数据

数据数据数据数据数据数据数据数据

SHEET2我想从第一张纸上拿到这个:

... A ..... B ..... C .... ..D ...... ......ê......˚F.....ģħ

数据数据数据数据数据数据数据

数据数据数据数据数据数据数据

奋斗了几天才得到这个权利,并尝试了多段代码,最后只是删除了整个地段,然后来到这里。请帮助任何人:) :) :) :) :)

回答

0
Sub tgr() 

    Dim wsSrc As Worksheet 'Variable for Source data worksheet 
    Dim wsDst As Worksheet 'Variable for Destination data worksheet 

    Set wsSrc = Sheets("Sheet1") 
    Set wsDst = Sheets("Sheet2") 

    With Intersect(wsSrc.UsedRange, wsSrc.Columns("H")) 
     .AutoFilter 1, "=" 'Filter for blanks in column H 

     'Copy resulting rows to the destination worksheet 
     .Offset(1).EntireRow.Copy wsDst.Cells(Rows.Count, "A").End(xlUp).Offset(1) 

     .AutoFilter 'Remove the filter 
    End With 

End Sub 
+0

这绝对是惊人的,第一次工作,谢谢。我试图做的其他事情是仅从第15行开始过滤并获取该信息。为了获得这个结果,我可以做些微小的改变。 – 2014-09-12 20:24:46

+0

将'wsSrc.Column(“H”)更改为'wsSrc.Range(“H14:H65000”)'14,以便它将行14视为标题行从第15行开始抓取数据。 65000用尽大部分行。如果您的数据超出第65000行,只需使用更大的数字(不超过最后一行数)。 – tigeravatar 2014-09-12 20:30:31

+0

再次感谢。仍然不敢相信我错过了这些答案。必须生锈,需要再学习一些东西。非常感谢你非常感谢你的帮助。 – 2014-09-14 14:50:23

相关问题