在Excel中复制过滤器

时间:2016-02-25 00:43:18

标签: excel vba excel-vba

我正在尝试创建一个excel文件,该文件在粘贴到单独的选项卡上时,基本上“整理”我们客户的物料清单。

客户的BOM提供如下:http://imgur.com/5EqNTNe

我使用此excel函数仅通过相关数据并将其与同一行中的位置匹配 - = IF((LEN(D8)< 2),0,(LOOKUP(2,1 /( C $ 1:C8<> “中”),C:C)))

让我这样:imgur(dot)com / 3z4MXfs

理想情况下,我希望能够运行一个宏来显示另一个工作表上的数据,并删除空白行或零行,如下所示:http://imgur.com/VaLk1F1(不更改其他选项卡上的原始物料清单) )

有没有人知道我会怎么做呢?

谢谢

1 个答案:

答案 0 :(得分:0)

此代码会将您的公式结果复制到第二张表格中,忽略空白或“零”行

Sub CopyRows()
Dim RowNo, LastRow, NewRowNo As Long
LastRow = Sheets(1).Cells(Rows.Count, 4).End(xlUp).Row
RowNo = 1
NewRowNo = 1

Sheets(2).Cells.Clear

Do Until RowNo = LastRow

    If Sheets(1).Cells(RowNo, 10) = "" Or Sheets(1).Cells(RowNo, 10) = "0" Then

    RowNo = RowNo + 1

    Else: 

    Sheets(2).Cells(NewRowNo, 1) = Sheets(1).Cells(RowNo, 10)
    Sheets(2).Cells(NewRowNo, 2) = Sheets(1).Cells(RowNo, 11)

    RowNo = RowNo + 1
    NewRowNo = NewRowNo + 1

    End If
    Loop

End Sub