- 締切済み
ワード2007を使っています(図形のVBAについて)
ワード2007を使っています(図形のVBAについて) ワード2007で、エクセルから拡張メタファイルでグラフをピクチャ貼り付けしています。 貼り付けるとサイズが120%とか少し大きめになってしまうので、いつもリセットして100%にしています。 これをマクロでボタン一つ、又はショートカットで操作したいのですが、2007では図に関しては記憶マクロで作成できないようです。 VBAで書き込みたいのですが、どのように書いたらいいでしょうか? 宜しくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- xls88
- ベストアンサー率56% (669/1189)
≫回答番号:No.1 この回答への補足 >最初に説明不足で申し訳なかったのですが、 良くあることです。 気にしないでください。 >選んだオブジェクトだけ100%にするにはどこを・・・ 選択したオブジェクトという事ですか? Selection.Reset などと出来れば簡単なのですがエラーになります。 インデックスを指定する方法(インデックスが解らなければ使えません。) ActiveDocument.InlineShapes(1).Reset 名前があるなら InlineShapeをConvertToShapeすれば名前で判定出来そうです。 処理後にConvertToInlineShapeで元の種類に戻す。 挿入は手作業ですか? もしコードがあるなら提示できませんか? 手掛かりが見つかるかもしれません。
- xls88
- ベストアンサー率56% (669/1189)
試しにコードを書いてみました。 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%にするにはどこを変えたらいいでしょうか?
補足
返事が遅くなり、申し訳ありませんでした。 オブジェクトに名前はありません。 単純にselectionとかavtive~みたくできるのかな。。。。と思ったら、そうでもなく。。 コードはオフィスのPCなので、ここでは提示することができません。 スミマセン。。。 何か方法がありましたら、引き続き宜しくお願いします。