2017-07-18 209 views
1

通过Excel或VBA使用高级筛选器,我可以获得匹配我的查询字符串的匹配通配符。 Criteria =“On Drug(GPI)”,但结果包括“On Drug(GPI)”&“On Drug(GPI)w/Days Supply”。我如何获得完全匹配?高级筛选器:Excel VBA

Set dataRng = Range("raw_FxnTbl") 
      startCol = 2 
      endCol = 8 
      With sumSh 
       .Select 
       Set pasteRng = .Range(.Cells(labelRow, startCol), .Cells(labelRow, endCol)) 
       dataRng.AdvancedFilter _ 
        Action:=xlFilterCopy, _ 
        CriteriaRange:=critRng, _ 
        CopyToRange:=pasteRng, _ 
        Unique:=True 
      End With 

critRng被定义为:

“,这FXN?

With calcSh 

    .Select 

    .Cells(critRow + 1, critCol).Value = Trim(chosenItem) 

    Set critRng = .Range(.Cells(critRow, critCol), .Cells(critRow + 1, critCol)) 

End With 

这是定义critRng:

critRow ==>名

critRow + 1 ==>在药物(GPI)

+1

如果没有看到如何设置标准范围和critRng变量,就很难评估。 –

+0

查看修订后的帖子 –

+0

我可以重现这个问题,是的,这是一个奇怪的结果)。看到我的答案在下面,希望它有帮助。 –

回答

0

尝试把此在标准细胞在critRow+1

旧文本是On Drug (GPI)

输入此替代:

'=On Drug (GPI)

  • 撇号是避免的Excel将其解释为一个公式。

  • =是强制Excel制作一个Exact Match(不区分大小写)。