1

我目前正在使用下面的代码来查找多个值,然后将其复制/粘贴到另一张表中。此代码的目的是从庞大的数据集中检索基因列表(小词)。

此代码仅用于一个基因列表(一个小关键字列表),它出现在工作表 3 列 A(从 A2 开始)中。从庞大的数据集(存在于工作表 1)中检索到的所有数据都被复制到工作表 2。

现在我有 6 个基因列表(6 个小关键字列表)。我必须为所有这些基因列表制作 6 张单独的表格。请告诉我这个问题的代码。

Sub OrderFinder()
    Dim srchLen, gName, nxtRw As Integer
    Dim g As Range

    'Clear Sheet 2 and Copy Column Headings
    Sheets(2).Cells.ClearContents
    Sheets(1).Rows(1).Copy Destination:=Sheets(2).Rows(1)

    'Determine length of Search Column from Sheet3
    srchLen = Sheets(3).Range("A" & Rows.Count).End(xlUp).Row

    'Loop through list in Sheet3, Column A. As each value is
    'found in Sheet1, Column B, copy it too the next row in Sheet2
    With Sheets(1).Columns("B")
        For gName = 2 To srchLen
            Set g = .Find(Sheets(3).Range("A" & gName), lookat:=xlWhole)
            If Not g Is Nothing Then
                nxtRw = Sheets(2).Range("B" & Rows.Count).End(xlUp).Row + 1
                g.EntireRow.Copy Destination:=Sheets(2).Range("A" & nxtRw)
            End If
        Next
    End With
End Sub
4

0 回答 0