VBA Excel - 查找所有工作表中的字符串,并将匹配的行复制到新工作表中

时间:2013-08-14 22:33:13

标签: excel vba

我有一张包含多张纸的Excel文件。我想在现有工作表的任何单元格中找到一个字符串,并将其复制到新的“结果”工作表中。我需要获取找到许多字符串(大约50个不同的字符串)的行,并将这些结果放在一个单独的行中。

如果我可以提供要搜索的字符串集,并且“结果”表在结果块之间有一个空行(以区分找到的字符串块),那将是很好的。

我已经搜索了这个,但找到了复制匹配字符串行的代码,但是它们只搜索1张,我需要搜索所有现有的工作表(当然,除了“结果”表)。

我非常感谢你的帮助!

1 个答案:

答案 0 :(得分:1)

如果您有一个ProcessSheet功能可以在一张纸上运行,您可以在每张纸上运行它,例如:

Dim Sh As WorkSheet
For Each Sh In Sheets
  If Sh.Name <> "Sheet not to process" Then ProcessSheet Sh
Next Sh

并修改您的ProcessSheet,以便每个引用都使用Sh,如下所示:

'without sheet reference
Cells(1, 2)
Range("A1")
'become
Sh.Cells(1, 2)
Sh.Range("A1")