【发布时间】:2017-08-12 01:36:06
【问题描述】:
我已经尝试了所有可能的方法来搜索并找到解决此问题的方法,但无济于事,我的问题是在工作簿的不同工作表中搜索特定的单元格值并复制整行及其标题(每张工作表有不同的标题示例,Lab1、Name、Date、Lab Test Type、LabType N、Name、Date、Test Type 等)并循环直到找到最后一个值及其各自的标题。在这方面的任何帮助将不胜感激,请原谅我不知道提出问题的正确方法,因为我完全是这个论坛的新手。
下面的这段代码给了我搜索单元格的结果,但是因为每个搜索结果都有自己的标题,我没有得到结果,因为它只通过循环粘贴整行单元格而不是它们的标题。
这是示例。
Sheet2 具有名称 日期 年龄 性别 单元格 A1:F1 范围内没有测试类型
Sheet3 有名称 日期 年龄 性别 单元格 没有测试类型 2 X 射线范围 A1:G1
Sheet4 有 Name Date Age Sex Cell No Test Type3 XRay ECG A1:H1
Option Explicit
Option Compare Text '< ignore case
Sub AllRecordSearchMacroForPhone()
Dim FirstAddress As String
Dim c As Range, Sheet As Worksheet
Dim rng As Range
Set rng = Range("D1")
If rng = Empty Then Exit Sub
For Each Sheet In Sheets
If Sheet.Name <> "Sheet1" Then
With Sheet.Columns(5)
Set c = .find(rng, LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then
FirstAddress = c.Address
Do
c.EntireRow.Copy _
Destination:=Sheets("Sheet1").Range("A" & Rows.Count).End(xlUp).Offset(1, 0)
Set c = .FindNext(c)
Loop Until c.Address = FirstAddress
End If
End With
End If
Next Sheet
Set c = Nothing
End Sub
【问题讨论】: