问题描述
我在"数据库"工作表中有数据,如下所示:
我编写了一个简短的代码,用于从"数据库"表中获取与特定条件匹配的数据,并将其粘贴到另一个表"SelectedRecords"中
以下是我的代码
Sub CopyData()
Dim db As Worksheet
Dim rcd As Worksheet
Set db = ThisWorkbook.Sheets("Database")
Set rcd = ThisWorkbook.Sheets("SelectedRecords")
db.Range("A1:C7").AdvancedFilter _
Action:=xlFilterCopy, _
CriteriaRange:=Range("$A$1:$A$2"), _
CopyToRange:=rcd.Range("$A$4:$B$4")
End Sub
此代码工作正常,但我收到一些其他记录,如下所示:
我正在查找name="jack"的数据,但在输出中我得到的所有数据都以"jack"开头。如何获取与A2单元格中提到的条件完全匹配的记录。在本例中,我的输出应该只给出一条"Jack"记录。其他两条记录"JackSparrow"和"Jackson"应被过滤掉。
推荐答案
默认情况下,您将获得所有匹配项。当前,SelectedRecords
中的单元格A2
具有Jack
。若要获得完全匹配,请将其更改为="=Jack"
,如下所示,然后重试。
如果您不想每次都键入"=",请使用帮助器列,如下所示