- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:excel 2000 グラフを元の位置に図貼り付け)
Excel 2000でグラフを元の位置に図貼り付け
このQ&Aのポイント
- Excel2000を利用している場合、アクティブなシートに作られている全てのグラフを図に変換し、元の位置に同じ大きさで貼りなおしたいです。
- サイトを調べた結果、下記の記述でグラフを図として貼り付けることはできました。しかし、元の位置に貼り付ける方法が分かりません。
- 修正方法を教えていただけないでしょうか?ご指導よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
失礼。 CTop = Selection.Top: CLeft = Selection.Left '追加 上記を CTop = s.Top: CLeft = s.Left '追加 これで。
その他の回答 (1)
- tsubuyuki
- ベストアンサー率45% (699/1545)
回答No.1
コピーを取る前にグラフを選択するでしょうから、 その時についでに .Top .Left で、上端と左端の座標を拾って、変数に入れておき、 貼り付けた後でその座標まで持っていけばよろしいかと。 例えば、質問中のコードをそのまま使うなら Sub グラフを図として貼る() Dim s As Object Dim CTop As Single, CLeft As Single '追加 For Each s In ActiveSheet.ChartObjects s.Activate ActiveChart.ChartArea.Select CTop = Selection.Top: CLeft = Selection.Left '追加 ActiveChart.CopyPicture Appearance:=xlScreen, Size:=xlScreen, Format:=xlPicture Range("A1").Select '追加 ActiveSheet.Pictures.Paste.Select 'ちょっと修正 Selection.ShapeRange.IncrementLeft CLeft '追加 Selection.ShapeRange.IncrementTop CTop '追加 Next End Sub これでとりあえずできると思いますよ。
お礼
回答ありがとうございます。 早速、確認させていただいたところ、A1セルに貼り付けとなっていました。 ActiveSheet.Pictures.Paste.Select 'ちょっと修正 Selection.ShapeRange.IncrementLeft CLeft '追加 Selection.ShapeRange.IncrementTop CTop '追加 の部分が効いていないと思います。さらに修正のアドバイスを頂ければ幸いです。