如何格式化 Excel 中的单元格以呈现其包含的 HTML?

如何格式化 Excel 中的单元格以呈现其包含的 HTML?

给定一个包含 HTML 单元格的 Excel 电子表格(换句话说,带有标记的内容),我该如何让 Excel使成为HTML 而不是简单地显示组合的内容/标记?换句话说,如果单元格包含<p>Here is some text</p>我希望 Excel 以浏览器的方式显示内容(例如,内容上方/下方有一些空格),而不是显示带有完整标签的原始 HTML。我使用的是 Mac,以防万一。

答案1

查看帖子 带有标签的 HTML 文本,用于 Excel 单元格中的格式化文本,其中解决方案使用 VBA。

发帖者要求转换此 HTML 文本:

<html><p>This is a test. Will this text be <b>bold</b> or <i>italic</i></p></html>

变成这样:

这是一个测试。此文本是否大胆的或者斜体

以下是 Siddharth Rout 接受的答案,它将 HTML 转换为富文本:

是的,这是可能的。事实上,让 Internet Explorer 为您完成这些脏活。

我的假设

  1. 我假设 html 文本位于 Sheet1 的单元格 A1 中。您也可以使用变量。
  2. 如果你有一列全是 html 值,那么只需将下面的代码放入循环中

代码

Sub Sample()
    Dim Ie As Object

    Set Ie = CreateObject("InternetExplorer.Application")

    With Ie
        .Visible = False
    
        .Navigate "about:blank"
    
        .document.body.InnerHTML = Sheets("Sheet1").Range("A1").Value
    
        .document.body.createtextrange.execCommand "Copy"
        ActiveSheet.Paste Destination:=Sheets("Sheet1").Range("A1")
    
        .Quit
    End With
End Sub

快照

在此处输入图片描述

帖子中的其他答案可能也很有用。

相关内容