• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:excel2007シート間でのコピーについて)

Excel2007シート間でのコピーが上手くいかない問題の解決法

このQ&Aのポイント
  • Excel2007でシート間のコピーを実行したいが上手くいかない問題について解決法を教えてください。
  • シート1(シート名"ds1_1")のO17をシート51(シート名"sheet51")のC1に、シート2(シート名"ds1_2")のO17をシート51のC2にコピーしたいが、実行するとsheet51のC列に"#REF!"と表示される問題が発生しています。
  • また、各シートでのO17の値はそのシートでのO4:O15の和となっており、入力内容は一部正常にコピーされ、他の部分では"=SUM(#REF!)"となっています。

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

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.1

数式で貼り付けるのではなく以下のように値で代入してください。 For i = 1 To 50 Sheets("sheet51").Range("C" & i).Value = Sheets("ds1_" & i).Range("O17").Value Next i

moozooo
質問者

お礼

上手く実行することができました。 ありがとうございました。

その他の回答 (2)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

各シートの対象セルを全てペーストしているのだからエクセルが数式を自己解釈して貼り付けしています。 ご例示のコードが良く分かりませんので、以下のサンプルコードを参考にして下さい。 Sub sample() For i = 1 To 50 Sheets("ds1_" & i).Range("O17").Copy Sheets("sheet51").Range("C" & i).PasteSpecial Paste:=xlValues Next End Sub

moozooo
質問者

お礼

ご回答ありがとうございました。 今後活用させて頂きたいと思います。

  • hananoppo
  • ベストアンサー率46% (109/235)
回答No.2

次のようなマクロでどうでしょう。 Sub Macro9() Dim i As Integer For i = 1 To 50 Worksheets("sheet51").Range("C" & i).Formula = "=ds1_" & i & "!O17" Next i End Sub

moozooo
質問者

お礼

ご回答ありがとうございます。 参考になりました。