【问题标题】:VBA Excel code needed to search open worksheet and print results to new worksheet through a userformVBA Excel 代码需要通过用户表单搜索打开的工作表并将结果打印到新工作表
【发布时间】:2013-12-27 02:03:22
【问题描述】:

我是 VBA 新手,但我渴望学习!我一直在不知疲倦地寻找这个问题的答案,但收效甚微。

目前,我创建了一个命令按钮来播放一个用户表单,该用户表单对大型数据库具有多个搜索条件。用户表单搜索打开的工作表并根据用户输入的信息(姓名、类型、电子邮件、来源、捐助者信息、最后联系方式等)填充剩余的字段。这基本上是一种用户友好的高级查找。

我需要能够搜索任何条件,通常会产生多个结果,并将这些多个结果打印/粘贴到新的工作表中。理想情况下,我想在当前用户窗体上包含一个用于“搜索和查看结果”的命令按钮,因为我正在为一些对技术非常不友好的人创建它。

如果你们中的任何人有我可以输入到新命令按钮的代码,我将放置在当前用户窗体上以完成此任务,我将非常感激!

如果您有其他建议,我也完全愿意接受。我什至考虑在打开的工作簿上设置一个查找按钮和一个用于搜索和查看结果的按钮,但我仍然需要所有搜索条件。

提前非常感谢!

目前,我在用户表单中有此代码:

 Private Sub CommandButton1_Click()
 row_number = 0
 Do
 DoEvents
 row_number = row_number + 1
 item_in_review = Sheets("ULEC-Master-Consolidated.csv").Range("F" & row_number)
If item_in_review = TextBox1.Text Then
    TextBox2.Text = Sheets("ULEC-Master-Consolidated.csv").Range("H" & row_number)
    TextBox3.Text = Sheets("ULEC-Master-Consolidated.csv").Range("J" & row_number)
    TextBox4.Text = Sheets("ULEC-Master-Consolidated.csv").Range("N" & row_number)
    TextBox5.Text = Sheets("ULEC-Master-Consolidated.csv").Range("P" & row_number)
    TextBox6.Text = Sheets("ULEC-Master-Consolidated.csv").Range("Q" & row_number)
    TextBox7.Text = Sheets("ULEC-Master-Consolidated.csv").Range("R" & row_number)
    TextBox8.Text = Sheets("ULEC-Master-Consolidated.csv").Range("S" & row_number)
    ComboBox1.Text = Sheets("ULEC-Master-Consolidated.csv").Range("A" & row_number)
    ComboBox2.Text = Sheets("ULEC-Master-Consolidated.csv").Range("B" & row_number)
    ComboBox3.Text = Sheets("ULEC-Master-Consolidated.csv").Range("C" & row_number)
    TextBox9.Text = Sheets("ULEC-Master-Consolidated.csv").Range("D" & row_number)
    TextBox10.Text = Sheets("ULEC-Master-Consolidated.csv").Range("Y" & row_number)
    TextBox11.Text = Sheets("ULEC-Master-Consolidated.csv").Range("T" & row_number)
    TextBox12.Text = Sheets("ULEC-Master-Consolidated.csv").Range("U" & row_number)
    TextBox13.Text = Sheets("ULEC-Master-Consolidated.csv").Range("V" & row_number)
    TextBox14.Text = Sheets("ULEC-Master-Consolidated.csv").Range("W" & row_number)
    TextBox15.Text = Sheets("ULEC-Master-Consolidated.csv").Range("X" & row_number)
    End If

 Loop Until item_in_review = ""

 End Sub

*我为我包含的每个文本框和组合框重复此代码。此外,我还有一个“清除表单”按钮。

【问题讨论】:

  • 你现有的宏是什么样的?
  • @admdrew 我刚才放了一些宏代码。让我知道还有什么有用的!

标签: search excel userform vba


【解决方案1】:

对于您想要构建的搜索功能,您可以利用我在 Ozgrid 上找到的搜索功能,并在我自己的编码中每天使用。我已经标记了帖子的第 2 页,因为该功能是从原始帖子更新的。希望这会有所帮助:

http://www.ozgrid.com/forum/showthread.php?t=27240&page=2

【讨论】:

  • 看了这个之后,它对我不起作用。我创建了命令按钮并尝试更改语法以匹配我的工作表,但没有成功。也许我不知道足够的代码。还有什么建议吗?这在 Excel VBA 中是否可行?
猜你喜欢
  • 2020-06-03
  • 1970-01-01
  • 1970-01-01
  • 2017-09-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-06-15
  • 2017-05-12
相关资源
最近更新 更多