Wordのテキストボックスの位置の基準と表の関係
Wordのテキストボックスの位置の基準と表の関係
Wordのマクロで、あるページにあるテキストボックスを次のページの同じ位置に同じ大きさのテキストボックスを作成するものを作りました。
テキストボックスを選択した後、Top, Left,Width, Heightの各値を保存した後、
次のページに移動して(Selection.GoTo What:=wdGoToPage, Which:=wdGoToNext)、
テキストボックスを作成し、保存した値を代入します。
(ActiveDocument.Shapes.AddTextbox(msoTextOrientationHorizontal, L, T, W, H).Select)
これでうまく言ったのですが、時々テキストボックスを新たに作るページに、表(ページ幅程度の大きな表)が入っていると、変なところに、テキストボックスが作られてしまいます。
原因を調べてみると、表がある場所に、テキストボックスが重なっているときには、テキストボックスの位置を表す基準が変わってしまうようです。
たとえば、テキストボックスの位置を「詳細設定」の「配置」で「基準」を「ページ」にし、「右方向からの距離」「下方向の距離」を両方とも「0」にすると、ページの左上ぎりぎりのところに、テキストボックスが移動しますが、
ある表の上にテクストボックスを移動させてから、同じように「基準」を「ページ」にし、「右方向からの距離」「下方向の距離」を両方とも「0」にすると、テキストボックスは表の中で動くようです。
表とかぶっているときは位置の基準となるものが変わるようです。
この問題は「アンカー」の位置と関係しているのかもしれないと思っていますが、確証はありません。
表がある場合でも、ない場合でも同じ基準でテキストボックスの位置を指定したいのですが、どのようにしたらいいでしょうか。