使用带有两个不同搜索字段的VBA搜索Excel工作表并显示关联的行

时间:2016-03-08 17:40:27

标签: excel vba excel-vba

我有一个工作簿,其中一个工作表实际上是用户界面,其余工作表位于其他工作表中。

在用户界面表(“前面”)上我试图找到一种方法来搜索项目和/或序列号的“项目”表,然后如果可行,也可以添加其他搜索。

以下是表格:

前: enter image description here

产品: enter image description here

单击“搜索设备”按钮后,将运行以下VBA脚本:

Sub NextAvailable()

Dim Equipment As String
Dim SerialNumber As String

Equipment = InputBox("Item? (eg Monitor, Desktop)")
SerialNumber = InputBox("Serial Number?")

    With Sheets("Items")
        .Range("A:A").AutoFilter Field:=1, Criteria1:="" & Equipment & ""
        .Range("C:C").AutoFilter Field:=3, Criteria1:="" & SerialNumber & ""
    End With

Sheets("Items").UsedRange.SpecialCells(xlCellTypeVisible).Copy Destination:=Worksheets("Front").Range("B14")

End Sub

目前要求设备类型(从“项目”中的A:A获得)和序列号(从“项目”中的C:C获得。然后在“前”中显示结果。

这是一个非常简单的搜索,所以结果同样简单 - 即如果我输入'桌面'和'1',那么我得到一个结果(项目第5行)。但是,如果我输入“桌面”并将序列号留空,那么我也只得到一个结果(第6行)。我想在这里发生的是列出所有桌面,包括序列号附加到项目的桌面。我还希望能够将项目留空,只需按序列号搜索即可。

我是否可以调整我的VBA脚本来实现这一目标?

0 个答案:

没有答案