3

に頼らずにWord2010で図形をコピーすることは可能.Selectですか?Dev Centerによると、Anchorプロパティはシェイプのアンカー範囲を返します。それは前進の道でしょうか?ただし、以下のコードはエラーを返します。

Sub createShape()
    Set myShape = ActiveDocument.Shapes.AddShape(msoShapeRectangle, 1, 1, 1, 1)
    myShape.Anchor.Copy
End Sub
4

2 に答える 2

1

図形を選択せず​​にコピーすることはできないようですが、図形を選択せず​​に複製することは可能です(そもそもそれをコピーしたかったのはそのためです)。以下のコードは私が探していたものを私に与えます:

Sub createShape()
    Set myshape = ActiveDocument.Shapes.AddShape(msoShapeRectangle, 100, 100, 100, 100)
    Set anothershape = myshape.Duplicate
End Sub
于 2013-02-11T21:21:34.820 に答える
1

探しているものがあればそれは素晴らしいことですが、図形が固定されている段落(または範囲)をコピーすることで、図形自体をコピーできます。例えば:

Sub createShape()
   Dim myShape As Shape, myRange As Range

   Set myShape = ActiveDocument.Shapes.AddShape(msoShapeRectangle, 10, 10, 10, 10)
   Set myRange = myShape.Anchor.Paragraphs(1).Range
   myRange.Copy
End Sub

ただし、これに伴う問題は、アンカーした段落内のテキスト、またはアンカーがテーブル内にある可能性があるテキストをコピーして、奇妙なことが起こる可能性があることです。

また、挿入後に形状をインライン形状に変更して、テキストに合わせ、アンカーポイントが動き回る傾向があり、一般的に予測できないため、範囲がより明確になるようにすることもできます。

于 2013-02-11T22:36:47.370 に答える