• ベストアンサー

エクセル2003で、複数のシートに一度に図を貼り付けたい

エクセル2003でオートシェイプや直線などで組み合わせた図を作りました。 文字列も含まれて居ます。 それを1つのブック内のシート100枚ほどにコピーしたいと思っています。 シートすべてを作業グループにして貼り付けたところ、文字列はすべてのシートにコピーされましたが 図形は貼り付けられていません。 どうしたらよいでしょうか? 宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • n_na_tto
  • ベストアンサー率70% (75/107)
回答No.1

一般機能でできるかどうか知らないのですが、 VBAだと以下のコードになるのではないでしょうか? 最初のシート上のすべての図形を 2番目以降のシートに貼り付けます。 Sub test() Dim i As Long Dim Shp As Shape Dim myLeft As Single, myTop As Single With ActiveWorkbook.Worksheets  For Each Shp In .Item(1).Shapes   With Shp    myLeft = .Left    myTop = .Top    .Copy '最初のシートの図形を   End With   For i = 2 To .Count    With .Item(i)     .Paste '2番目以降のシートに貼り付け     With .Shapes      With .Item(.Count)       .Left = myLeft       .Top = myTop      End With     End With    End With   Next i  Next End With End Sub

hakkeijima
質問者

お礼

御礼が遅くなり大変申し訳ありません。 助かりました。 ありがとうございました。

その他の回答 (3)

  • n_na_tto
  • ベストアンサー率70% (75/107)
回答No.4

No.1です。 なるほど。exangkl さんの方法、いいですね。 Ctrlキーは押したまま PageDown→V→PageDown→V→連打。 100シートぐらいあっという間ですね。 勉強になります。

hakkeijima
質問者

お礼

お忙しい中、早くにご回答いただきまして 本当に助かりました。 ありがとうございました。

  • exangkl
  • ベストアンサー率0% (0/1)
回答No.3

回答No2の者です。少し訂正 >6.Sheet2をクリックしCtrl+Vで貼り付けする >7.Ctrl+PageDownでSheet3(次のシート)へ移動する >まだ貼り付けたいシートがある場合には6と7を繰り返す。 は、以下に 6.Sheet2をクリック 7.Ctrl+Vで針付けする 8.Ctrl+PageDownで次のシートへ移動する まだ貼り付けたいシートがある場合には7と8を繰り返す。 です。 あと、手順3ですが、複数シートを選択したい場合には、 ・Sheet2をクリックして、Ctrl+Shift+PageDownを押し続けると一気に選択できて便利です。 以上です。

hakkeijima
質問者

お礼

ご丁寧に説明していただき、大変勉強になりました。 ありがとうございました。

  • exangkl
  • ベストアンサー率0% (0/1)
回答No.2

根本の解決になってませんが、効率のいい方法です。 まず、質問にあります一度に複数シートに図形を貼り付ける方法は1さんのようにプログラムを組むくらいしか方法がありません。 ですから、次のようにしてみたら100枚ほどのシートであれば楽だと思います。 ~Sheet1の図形をSheet2とSheet3にコピーしたい場合~ 1.「図形描画ツールバー」の「図形の調整(R)」をクリックし、「位置あわせ」→「グリッド」にする。 2.Sheet1の図形を選択し、Ctrl+Cでコピーする。 3.Sheet2をクリックし、Shiftキーを押しながらSheet3をクリック(複数シート選択) 4.貼り付けたい位置のセルをクリック 5.Sheet1をクリック(複数シート選択解除) 6.Sheet2をクリックしCtrl+Vで貼り付けする 7.Ctrl+PageDownでSheet3(次のシート)へ移動する まだ貼り付けたいシートがある場合には6と7を繰り返す。 以上です。

hakkeijima
質問者

お礼

御礼が遅くなり大変申し訳ありません。 助かりました。 ありがとうございました。

関連するQ&A

専門家に質問してみよう