【问题标题】:How to clear search conditions and word after a search using Excel VBA如何在使用 Excel VBA 搜索后清除搜索条件和单词
【发布时间】:2020-07-03 16:25:29
【问题描述】:

场景

我有一个用户表单,除了其他自动化工作之外,它上面的按钮还可以使用 MatchCase = True 进行搜索。每当此用户窗体处于活动状态并且我尝试在其他打开的工作簿中进行一些搜索时,始终会勾选匹配大小写。每次我需要在此用户窗体处于活动状态时手动取消选中 Excel 中的匹配大小写。请看图片

当用户表单不显示时

显示用户表单时

问题

有什么方法可以让我使用 MatchCase = True 运行宏,但同时打开其他工作簿并按 Ctrl+F Matchcase 默认未选中?换句话说,如何在搜索宏执行后删除搜索关键字和搜索条件?我正在使用以下搜索代码并将搜索词作为变量worD

Selection.Find(What:=worD, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=True, SearchFormat:=False).Activate

【问题讨论】:

  • 为什么不使用 matchcase:=false (以及您想要记住的任何其他内容)对任何内容(星号)进行虚拟查找操作?正如您所注意到的,一些 find 参数在上次使用时被“记住”了。
  • 对于用户表单,我必须使用Match case = TrueLookAt:= xlWhole 进行精确搜索。问题是,用户仍然需要手动打开其他 Excel 工作簿并进行搜索,而无需精确搜索。在当前情况下,由于宏正在执行区分大小写的搜索,因此在执行后打开的其他工作簿也默认显示 match case true with search history
  • 但似乎只有way
  • 没有。某些 Range.Find 参数会在上次使用时被记住。如果没有虚拟查找操作,您只能关闭 excel 并重新打开它。
  • 还描述了here 如果您执行编辑|查找并更改任何内容,那么这些更改的设置将被记住。 还有here 这似乎对2016/Excel 365 也是如此。

标签: excel vba userform


【解决方案1】:

完成后执行虚拟搜索

Sub clearFind(ws As Worksheet)
    With ws.Cells
        .Find What:="", After:=ActiveCell, LookIn:=xlFormulas, _
              LookAt:=xlPart, SearchOrder:=xlByRows, _
              SearchDirection:=xlNext, MatchCase:=False, _
              SearchFormat:=False
    End With
End Sub

【讨论】:

    【解决方案2】:

    理论上也许您可以使用 SendKeys,但根据我的经验,它并不可靠。

     ' here set a variable to search. After that:
          Application.SendKeys ("^f")
          Application.SendKeys ("{DELETE}")
     ' and finally paste variable.value via SendKeys
    

    【讨论】:

      【解决方案3】:

      根据堆栈溢出中的一些成员,一个简单的方法是清除匹配案例和搜索历史的虚拟搜索。

      Sub dummySearch()
          dummy = Cells.Find(What:="", LookIn:=xlValues, LookAt:=xlPart)
      End Sub
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-12-24
        • 2011-04-28
        • 2014-01-24
        • 1970-01-01
        • 2020-12-11
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多