• ベストアンサー

エクセルをバージョンアップさせたらマクロがうまくいきません

OSはXPです エクセル2002から 2003にバージョンをあげました いままでうまくいっていたマクロが Range(Cells(1, 1), Cells(Cells(65535, 1).End(xlUp).Row, 9)).Select Selection.Copy Sheets("Sheet1").Select Sheets.Add ActiveSheet.Paste このような内容で ActiveSheet.Paste  この部分でエラーが起きます 「実行時エラー ”1004”  worksheetクラスのpasteメソッドが   失敗しました」 というメッセージがでます。 どういう対処をしたらよろしいでしょうか? ご教授ください。 (バージョンを元にに戻すなど)

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

  • ベストアンサー
回答No.1

原因は不明ですが、お見受けする限り、指定した範囲を新しいシートにコピーする といったことをやられているようですので 代替案として以下の方法ではだめでしょうか? 'コピー元のシート"Sheet1"を先頭シートの前にコピーする Sheets("Sheet1").Copy Before:=Sheets(1) 提示されていることを上の1行でご対応できるかもしれません。ご検討ください。

ennkai
質問者

お礼

回答ありがとうございます 教えてくださった代替案何かの機会に 使ってみたいと思います ソフトを入れ替えてなんとか解決いたしました

その他の回答 (1)

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

ざっと見た感じでは、別に、Versionの問題ではないようですが。 標準モジュールに書かれていますか? Sub Test_Copy()  Range(Cells(1, 1), Cells(Cells(65535, 1).End(xlUp).Row, 9)).Copy  Worksheets.Add Before:=Sheets(1)  Worksheets(1).Paste End Sub

ennkai
質問者

お礼

回答ありがとうございます 標準モジュールに書いております。 とりあえずソフトをもう一度入れ替えて なんとか解決いたしました 初心者なものでactiveを乱用しており それを回避する記述方法ありがとうございました 大変ん参考になりました

関連するQ&A