htmlタグで定義された多くのhtmlドキュメントを含むワードドキュメントがあります。範囲の配列またはコレクションを作成したいと思います。各範囲は1つのhtmlドキュメントで構成されています。たとえば、Wordドキュメントは次のとおりです。
<html> <head> <title> </title> </head> <body> HTML Doc 1 </body> </html>
<html> <head> <title> </title> </head> <body> HTML Doc 2 </body> </html>
<html> <head> <title> </title> </head> <body> HTML Doc 3 </body> </html>
など。rngHTMLDocs()As Rangeに一連の範囲を設定したいと思います。各範囲には、開始および終了の各htmlタグ内のテキストが含まれます。
これらの範囲を定義するドキュメント全体を反復処理するために次のコードを作成しましたが、HTMLDoc1を選択し続けるだけです。反復全体に間違った方法でアプローチしている可能性があります。とにかく、ここにコードがあります:
Set rngDocContent = ActiveDocument.Content
intCounter = 1
With rngDocContent.Find
.ClearFormatting
.Text = "<html>"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Execute
Do While .Found = True
Set rngTemp = rngDocContent.Duplicate
rngTemp.Select
Selection.Extend
With Selection.Find
.ClearFormatting
.Text = "</html>"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindAsk
.Execute
End With
Set rngHtmlDocs(intCounter) = Selection.Range
Selection.Start = Selection.End
intCounter = intCounter + 1
Loop
End With
ドキュメント全体にrngDocContentを設定し、wdFindContinueを使用する際に、実際には、開始htmlタグの次のインスタンスをドキュメントで検索し続けることを期待していましたが、そうではありません。あなたが提供するかもしれないどんな助けにも前もって感謝します。