dポイントプレゼントキャンペーン実施中!

ワード2007を使っています(図形のVBAについて)

ワード2007で、エクセルから拡張メタファイルでグラフをピクチャ貼り付けしています。
貼り付けるとサイズが120%とか少し大きめになってしまうので、いつもリセットして100%にしています。
これをマクロでボタン一つ、又はショートカットで操作したいのですが、2007では図に関しては記憶マクロで作成できないようです。
VBAで書き込みたいのですが、どのように書いたらいいでしょうか?

宜しくお願いします。

A 回答 (2件)

≫回答番号:No.1 この回答への補足



>最初に説明不足で申し訳なかったのですが、
良くあることです。
気にしないでください。

>選んだオブジェクトだけ100%にするにはどこを・・・
選択したオブジェクトという事ですか?
Selection.Reset
などと出来れば簡単なのですがエラーになります。

インデックスを指定する方法(インデックスが解らなければ使えません。)
ActiveDocument.InlineShapes(1).Reset

名前があるなら
InlineShapeをConvertToShapeすれば名前で判定出来そうです。
処理後にConvertToInlineShapeで元の種類に戻す。


挿入は手作業ですか?
もしコードがあるなら提示できませんか?
手掛かりが見つかるかもしれません。

この回答への補足

返事が遅くなり、申し訳ありませんでした。
オブジェクトに名前はありません。
単純にselectionとかavtive~みたくできるのかな。。。。と思ったら、そうでもなく。。
コードはオフィスのPCなので、ここでは提示することができません。
スミマセン。。。
何か方法がありましたら、引き続き宜しくお願いします。

補足日時:2010/11/03 15:28
    • good
    • 0

試しにコードを書いてみました。




Dim ilshp As InlineShape
Dim scalw As Single
Dim scalh As Single

For Each ilshp In Application.ActiveDocument.InlineShapes
If ilshp.Type = wdInlineShapePicture Then
scalw = ilshp.ScaleWidth
scalh = ilshp.ScaleHeight
If scalw <> 100 Or scalh <> 100 Then
ilshp.ScaleWidth = 100
ilshp.ScaleHeight = 100
'あるいは下記で
'ilshp.Reset
End If
End If
Next

この回答への補足

ありがとうございます。確かに100%になったのですが、ドキュメントすべてのオブジェクトが100%になってしまいました。
最初に説明不足で申し訳なかったのですが、選んだオブジェクトだけ100%にするにはどこを変えたらいいでしょうか?

補足日時:2010/10/27 22:34
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!