Excel弹出应用程序输入框(搜索功能)

Excel弹出应用程序输入框(搜索功能),excel,excel-2010,vba,Excel,Excel 2010,Vba,我正在尝试创建一个弹出框来搜索第二列中的某个值,因为我对vba编码还是新手,我只能通过谷歌搜索来完成这项工作 我想做的是,所有这些都是在宏中完成的,以找到某个值,然后当程序找到某个值时,它将复制该值所在的整行,并将其粘贴到excel中具有相同标题的新工作表中 这是我到目前为止掌握的代码 Sub macrotest() x = 2 Do While Cells(x, 1) <> "" If Cells(x, 2) = "TEST" Then Worksheets("Sheet1").R

我正在尝试创建一个弹出框来搜索第二列中的某个值,因为我对vba编码还是新手,我只能通过谷歌搜索来完成这项工作

我想做的是,所有这些都是在宏中完成的,以找到某个值,然后当程序找到某个值时,它将复制该值所在的整行,并将其粘贴到excel中具有相同标题的新工作表中

这是我到目前为止掌握的代码

Sub macrotest()
x = 2
Do While Cells(x, 1) <> ""
If Cells(x, 2) = "TEST" Then
Worksheets("Sheet1").Rows(x).Copy
Worksheets("Sheet2").Activate
erow = Sheet2.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
ActiveSheet.Paste Destination:=Worksheets("Sheet2").Rows(erow)
End If
Worksheets("Sheet1").Activate
x = x + 1
Loop

End Sub

正如您从上面看到的,我正在尝试将带圆圈的行复制到新的工作表中。

正如我在上面的评论中提到的,您可以使用Autofilter来完成此操作。与前面提到的代码不同,您可以使用InputBox获取搜索文本

在strearch=Clarke的链接中,Matthew是硬编码的。现在,您可以使用下面的代码获得自己的strearch


为什么不使用自动过滤器?正如Siddharth所说,这可以通过自动过滤轻松实现。不需要使用VBA。@SiddharthRout我看过他们的程序,但它仍然不能回答我的问题,他们在代码中所做的是,他们将变量设置为希望在VBA中搜索的值/字符串,但我想在excel中执行,就像一个输入框,让我搜索任何我想要的内容,不是通过编辑代码来搜索我想要的。谢谢..我知道:您的输入框可以将文本传递给该链接中提到的代码:@SiddharthRout我很抱歉,因为我还是vba新手,我可以知道哪一行是将文本传递给代码的行吗?谢谢
Sub Sample()
    Dim strSearch

    strSearch = Application.InputBox("Please enter the search string")

    If strSearch <> False And Len(Trim(strSearch)) <> 0 Then
        Debug.Print strSearch

        '
        '~~> Rest of the code
        '
    End If
End Sub