【问题标题】:In Excel, how to convert HTML text to regular text in multiple cells在 Excel 中,如何将 HTML 文本转换为多个单元格中的常规文本
【发布时间】:2016-04-20 07:01:15
【问题描述】:

我有一个包含多个工作表的 Excel 工作簿,每个工作表都有多个包含 HTML 文本的单元格。如何将此文本直接转换为具有 HTML 标记中定义的所有格式的常规文本。是否有可能有一个可以扫描所有此类单元格并立即转换它们的宏?

【问题讨论】:

    标签: vba excel


    【解决方案1】:

    尝试下面的函数来去除所有的 html 标签(Bold 和 break 除外)并通过将 html 文本解析到这个函数来获取常规文本,比如 striphtml(你的 html 文本)。

    Function StripHTML(sInput As String) As String
        Dim RegEx As Object
        Set RegEx = CreateObject("vbscript.regexp")
        Dim sOut As String
        With RegEx
            .Global = True
            .IgnoreCase = True
            .MultiLine = True
            .Pattern = "<(?!/?(?:br|b)\b)[^>]*>" 'Regular Expression for HTML Tags.
        End With
        sOut = RegEx.Replace(sInput, "")
        StripHTML = sOut
        Set RegEx = Nothing
    End Function
    

    【讨论】:

    • 但这只会从文本中删除标签,所需的格式将消失,如换行符、粗体文本等。
    • 请检查已编辑的代码以去除除粗体和中断之外的 html
    猜你喜欢
    • 2014-08-19
    • 2021-10-11
    • 1970-01-01
    • 2019-12-18
    • 2017-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-18
    相关资源
    最近更新 更多