HTML から Excel への変換について、週の初めに質問を投稿しましたが、うまくいきました。私が与えられたサンプル マクロ コードは、コードを HTML 形式から Excel セルに変換するという素晴らしい仕事をしました (Siddharth Rout に感謝します!)。私が今直面している問題は、IE オブジェクトが Excel で段落、区切り、およびリスト項目を処理する方法に関係しています。p、br、および li は、元のセルの下のセルにテキストを移動し、それらのセルにあったデータを上書きします。HTML のブロックを 1 つのセルだけに表示する方法はありますか (新しい行タグごとに同じセルに新しい行が作成されることを意味します)。
VBA コード
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
サンプル HTML
<p> Here are some possible uses:</p> <ul> <li><font color = "red"> syntax highlighting code snippets</font></li> <li style ="font-weight:bold; color: orange">validating credit card numbers, phone numbers, and zip codes</li> <li style = "font-style: italic">styling email addresses and tags</li> </ul>
複数の行に表示されているサンプル出力(1 つのセルに複数の行を表示したい - Shift+Enter の動作と同様)
Here are some possible uses:
syntax highlighting code snippets
**validating credit card numbers, phone numbers, and zip codes**
*styling email addresses and tags*