【问题标题】:Using regex expressions within VBA's Find and Replace tool在 VBA 的查找和替换工具中使用正则表达式
【发布时间】:2018-09-28 22:33:53
【问题描述】:

有没有办法在 VBA 编辑器的查找和替换工具中使用正则表达式?

例如: 我已打开模式匹配,但我的正则表达式似乎根本不起作用。

【问题讨论】:

    标签: regex vba replace find


    【解决方案1】:

    有没有办法在 VBA 编辑器的查找和替换工具中使用正则表达式?

    • 不。

    但是,如果您想替换 Sub 的某些内容,您可以循环所有 Subs,检查 Private 并添加如下内容:

    For Each objComp In objPro.VBComponents
        If objComp.Type = 1 Then
            strText = objComp.CodeModule.Lines(1, UP_TO_LINE)
    
            If InStr(1, strText, PRIVATE_MODULE) = 0 Then
                objComp.CodeModule.InsertLines 2, PRIVATE_MODULE
            End If
    
        End If
    Next objComp
    

    整个代码来自这个答案 - https://stackoverflow.com/a/41612479/5448626


    使用 VBEditor 和 VBA 非常有趣:

    http://www.rondebruin.nl/win/s9/win002.htm

    【讨论】:

    • 我相信查找和替换通配符的操作与在 VBA 中使用 Like 运算符相同。对于任何复杂的东西,VBA 都是您最好的选择。
    猜你喜欢
    • 2021-04-28
    • 1970-01-01
    • 2017-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多