Wordマクロは、表を処理するのはあまり得意ではないようです。
セルが結合されたり分割されたりすると、行や列の挿入でエラーになることがあります。
そこで、表に結合されたセルや分割されたセルがあるのかないのかを判定するマクロを紹介します。
なお、セル自体には、分割や結合の状態を示すプロパティがありません。
よって、どのセルがどの方向に結合・分割されているのかを調べるためには、別途プログラムを書いて細かい判定をしなければなりません。
<目次>
このマクロでできること
文中のすべての表に対して、結合や分割されたセルがある場合に、表の背景を黄色にします。
実行すると、以下のように着色されます。
マクロの解説
TableオブジェクトのUniform プロパティを用いて判定します。
表に結合や分割されたセルがある場合、Falseの値を返します。
マクロ
Sub 表のセルが分割か結合されている場合にマーキングする() Dim myTable As Table For Each myTable In ActiveDocument.Tables If myTable.Uniform = False Then myTable.Shading.BackgroundPatternColorIndex = wdYellow End If Next End Sub
参考記事
How do I detect a Word table with (horizontally) merged cells?