根据另一个表中的值将数据从一个选项卡复制到另一个选项卡

时间:2017-09-21 13:55:51

标签: excel excel-vba excel-formula vba

我有一张桌子" RawData"在excel我想过滤。列A具有名称,列B具有数字。我想将数据复制到另一个表," LoadingData",如果名称与特定数字匹配。我在不同的标签中有相应的名字/号码" ShiftData"在工作表中。

EX。如果John Smith在他旁边的列中有一个2,则将整行复制到工作表" LoadingData"。如果John Smith在他旁边的列中有4,请不要移动他的数据。

我尝试使用VLOOKUP功能,但我认为我尝试做的事情比这复杂得多。任何帮助,将不胜感激!

1 个答案:

答案 0 :(得分:0)

Sub CopyData()
Const cValuetoCheck = 2
Dim rngData As Range, rngLoad As Range

    Set rngData = Worksheets("shiftdata").Range("B1")
    Set rngLoad = Worksheets("loadingdata").Range("A1")

    While Not (IsEmpty(rngData))
        If rngData = cValuetoCheck Then
            rngData.EntireRow.Copy
            rngLoad.EntireRow.PasteSpecial
            Set rngLoad = rngLoad.Offset(1, 0)
        End If
        Set rngData = rngData.Offset(1, 0)
    Wend

End Sub