1

Microsoft Word 2007 に VBA マクロがあり、ドキュメント内の特定の背景色を持つすべてのテーブルを検索して、そのテーブルを削除します。その部分はうまく機能します。

しかし、テーブルを削除する必要があるだけでなく、それに続く段落も削除する必要があります。常に続く段落は、テキストのないスタイルの「マクロ テキスト」です。1 つの大きなテーブルに結合されないように、テーブルを互いに「分割」するだけです。

どうすればいいですか?以下は、テーブルを削除するための私のコードです:

For Each aTable In ActiveDocument.Tables
    If aTable.Rows(1).Cells(2).Shading.BackgroundPatternColor = wdColorGray15 Then
        aTable.Delete
    End If
Next aTable
4

2 に答える 2

1

最も単純には、このようなものが必要だと思います。段落全体を含めるように範囲を拡張し、スタイル名などを確認する必要がある場合があります。

Dim aTable As Word.Table
Dim rng As Word.Range
For Each aTable In ActiveDocument.Tables
If aTable.Rows(1).Cells(2).Shading.BackgroundPatternColor = wdColorGray15 Then
  Set rng = aTable.Range
  rng.Move unit:=wdParagraph, Count:=1
  aTable.Delete
  rng.Delete
  Set rng = Nothing
End If
Next aTable
于 2013-10-13T09:58:19.003 に答える