• 締切済み

すみません・・・(。 。、 )

何度もすみません。 ついさっき質問したばかりなのですが エクセルのある部分をコピーしてその下に貼り付けたりするやつで やってみたんですけどエラーがでるんです( ̄□ ̄;)!! For i = 2 To Page g = (i - 2) * 34 + 1 objExcel.Sheets("Sheet1").Range("A1:P34").Select objExcel.Sheets("Sheet1").Selection.Copy objExcel.Sheets("Sheet1").Range("A" & Format(g)).Select objExcel.Sheets("Sheet1").ActiveSheet.Paste Next ってやつで 今度は貼り付けができないんですっ! さっき回答をもらってその方法でためしてみたりもしたのですが だめでした・・・ やっぱり オブジェクトは、このプロパティまたはメソッドをサポートしていません。 (438) といわれます・・・・ もう、なにがいけないんでしょう(;∩;) 困ってます。 教えてくださいっ! ホントになんどもすみません。。。

みんなの回答

noname#240783
noname#240783
回答No.2

objExcel. → こいつはWorkbookオブジェクトで Sheets("Sheet1"). → こいつはWorkSheetオブジェクトです。 ActiveSheet. → それで、こいつが「いけませんのいけません」です。 「ActiveSheet」は、Workbookのプロパティですので、 WorkSheetオブジェクトである「Sheets("Sheet1")」には属しません。 理屈を言っちゃいましたが、要するに objExcel.Sheets("Sheet1").Paste でよろしいんじゃないでしょか?!

itsupy
質問者

お礼

すみません。 ありがとうございますw わかりましたー♪

回答No.1

はじめまして。 一つ気になったんですが、 For i = 2 To Page ってところのPageにはどんな値が入りますか? ためしにコマンドボタンを作って上記のコードを実行してみたんですが、 うまく動きませんでした。 コピーして下に貼りつけるってのは、 セルA1からセルP34までの範囲を、A35に貼りつけるって意味でいいんですかね?