标签:VBA
下面的示例搜索工作簿中除工作表“汇总表”外的多个工作表中的数据,将满足条件的数据所在行复制到指定工作表。
代码语言:javascript复制Sub SearchAndCombineSheets()
Dim FirstAddress As String
Dim WhatFor As String
Dim c As Range
Dim ws As Worksheet
WhatFor = InputBox("搜索什么数据?", "搜索条件")
If WhatFor = Empty Then Exit Sub
For Each ws In Worksheets
If ws.Name <> "汇总表" Then
With ws.Columns(7)
Set c = .Find(WhatFor, LookIn:=xlValues, LookAt:=xlPart)
If Not c Is Nothing Then
FirstAddress = c.Address
Do
If c.EntireRow.Cells(1, 6).Value > 0 Then
c.EntireRow.Copy Destination:=Worksheets("汇总表").Range("A" & Rows.Count).End(xlUp).Offset(1, 0)
End If
Set c = .FindNext(c)
Loop Until c Is Nothing Or c.Address = FirstAddress
End If
End With
End If
Next ws
Set c = Nothing
End Sub
具体讲,运行代码后,将弹出一个信息框,要求输入要搜索的数据,然后在工作簿中除工作表“汇总表”外的其他工作表的第7列搜索这个数据,如果匹配,接着再判断匹配行的第6列的单元格中的数值是否大于0,如果大于0则将该行复制到工作表“汇总表”中。
欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。