如何根据指定条件,从多个工作表中将符合条件的行复制到新工作表?
假设您有一个工作簿,其中包含三个格式相同的如下图所示的工作表。现在,您希望将这些工作表中 C 列包含“Completed”文本的所有行快速复制到一个新工作表中。如何高效轻松地实现这一操作,而无需手动逐个复制粘贴?
![]() | ![]() | ![]() |
使用 VBA 代码根据条件将多个工作表中的行复制到新工作表
以下 VBA 代码可助您根据特定条件,将工作簿中所有工作表的指定行高效汇总至一个全新工作表。请按以下步骤操作:
1. 按住 ALT + F11 键,即可打开 Microsoft Visual Basic for Applications 窗口。
2. 单击插入> 模块,然后将以下代码粘贴到模块窗口中。
VBA 代码:根据条件从多个工作表中将行复制到新工作表
Public Sub CopyRows_ValuesAndNumberFormats()
Dim xWs As Worksheet
Dim xCWs As Worksheet
Dim xRg As Range
Dim xStrName As String
Dim xRStr As String
Dim xRRg As Range
Dim xC As Integer
On Error Resume Next
Application.DisplayAlerts = False
xStr = "Kutools for Excel"
xRStr = "Completed"
Set xCWs = ActiveWorkbook.Worksheets.Item(xStr)
If Not xCWs Is Nothing Then
xCWs.Delete
End If
Set xCWs = ActiveWorkbook.Worksheets.Add
xCWs.Name = xStr
xC = 1
For Each xWs In ActiveWorkbook.Worksheets
If xWs.Name <> xStr Then
Set xRg = xWs.Range("C:C")
Set xRg = Intersect(xRg, xWs.UsedRange)
For Each xRRg In xRg
If xRRg.Value = xRStr Then
xRRg.EntireRow.Copy
xCWs.Cells(xC, 1).PasteSpecial xlPasteValuesAndNumberFormats
xC = xC + 1
End If
Next xRRg
End If
Next xWs
Application.DisplayAlerts = True
End Sub
注意:在上述代码中:
- 脚本中的文本“Completed”表示您将以此为条件复制行;xRStr = "Completed"。
- Set xRg = xWs.Range("C:C") 中的 C:C 表示条件所在的指定列。
3. 然后,按 F5 键运行此代码,所有符合条件的行将自动复制并粘贴到当前工作簿中名为“Kutools for Excel”的新工作表内。参见下图:

更多相关的提取或复制数据文章:
- 在 Excel 中使用高级筛选将数据复制到其他工作表
- 通常,我们可以快速使用“高级筛选”功能从同一工作表的原始数据中提取所需信息。但有时,当您尝试将筛选结果复制到其他工作表时,会收到如下警告提示。此时,该如何在 Excel 中顺利完成此操作?
- 在 Excel 中根据列条件将行复制到新工作表
- 例如,您有一张水果采购表,现在需要根据指定的水果将相关记录复制到新工作表,如何在 Excel 中轻松实现?下面我将为您介绍几种在 Excel 中根据列条件将行复制到新工作表的高效方法。
- 在 Excel 中如果列包含特定文本/值则复制行
- 假设您希望在某一列中查找包含特定文本或值的单元格,并复制该单元格所在的整行,该如何操作?下面将为您介绍几种在 Excel 中判断列是否包含特定文本或值,并复制对应整行的方法。
- 超级编辑栏(轻松编辑多行文本和公式);阅读版式(轻松阅读和编辑大量单元格);粘贴到筛选范围……
- 合并单元格/行/列并保留数据;分割单元格内容;合并重复行并求和/求平均值……防止重复项单元格;比较区域……
- 选择重复或唯一行;选择空白行(所有单元格均为空);超级查找和模糊查找多个工作簿中的内容;随机选择……
- 精准公式复制多个单元格而不更改公式引用;自动创建引用到多个工作表;插入项目符号、复选框等更多功能……
- 收藏并快速插入公式、区域、图表和图片;加密单元格并设置密码;创建邮件列表并发送电子邮件……
- 提取文本、添加文本、删除某位置字符、删除空格;创建并打印数据分页统计;在单元格内容与批注之间转换……
- 超级筛选(保存并应用筛选方案到其他工作表);高级排序按月/周/日、频率等分组;特殊筛选按加粗、倾斜等格式……
- 合并工作簿和工作表;汇总表格基于关键列;分割数据到多个工作表;批量转换 xls、xlsx 和 PDF……
- 数据透视表按周数、星期几等分组……显示未锁定、选区锁定并以不同颜色标识;高亮显示包含公式/名称的单元格……

- 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中启用标签式编辑与阅读,大幅提升多文档操作效率!
- 在同一个窗口的新标签页中打开并创建多个文档,而非在新窗口中操作。
- 将您的工作效率提升 50%,每天减少数百次鼠标点击!



